常用API——Object和Objects


Object类

Object类的作用:

  • 一个类要么默认继承了Object类,要么间接继承了Object类,Object类是Java中的祖宗类。
  • Object类的方法是一切子类都可以直接使用的,所以我们要学习Object类的方法。

toString方法

返回String类型
默认是返回当前对象在堆内存中的地址信息:类的全限名@内存地址

toString存在的意义

  • 父类toString()方法存在的意义就是为了被子类重写,以便返回对象的内容信息,而不是地址信息!!

重写toString方法

@Override
public String tostring() {
return ………
}

可以直接用IDEA快捷键生成

equals方法

返回Boolean类型
默认是比较当前对象与另一个对象的地址是否相同,相同返回true,不同返回false

需要比较对象内容时
重写equals方法

@Override
public boolean equals(Object o) {
// 1、判断足否是同一个对象比较,如果是返回true。
if (this == o) return true;
// 2、如果o是null返回false,如果o不是同类型页返回false
if (o == null || this.getClass() != o.getClass()) return false;
//强制类型转换,把o从Object转为比较类型
Student student = (Student) o;
return this.sex==student.sex && this.age==student.age && Objects.equals(this.name,student.name)

Objects类

Objects类与Object还是继承关系,Objects类是从JDK 1.7开始之后才有的。

equals 方法

Objects的equals方法比较的结果是一样的,但是更安全。

普通的equals方法,如果某个对象的值是Null,写代码时不会报错,运行起来会有空指针错误,会留下隐患

Objects.equals方法比较两个对象的,底层会先进行非空判断,从而可以避免空指针异常。再进行equals比较

isNull方法

判断变量是否为null ,为null返回true,反之返回false


文章作者: 泷少
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 泷少 !
评论
  目录