Object类和toString方法 --和Object类的equals方法

一,Object类概述:
Object是类层次结构的根,每个类都可以将Object作为超类,所有类都直接或者间接的继承自该类
构造方法:pulic Object()
在面向对象中,子类要访问父类的无参构造方法,是因为它们的的顶级父类只有无参构造方法
二,toSting()方法
1,toString()方法在Object类中定义,其返回值是String类型,返回类名和他的引用地址在进行与其他类型数据的连接操作时,自动调用tostring()方法。
2,作用是返回对象的字符串字符串表现形式。建议所有子类重写此方法,这样返回的字符串更利于阅读。
3

public static void main(String[] args) {
Date now = new Date();
System.out.println("now="+now);//相当于
System.out.println("now="+now.toString());

}

可以根据需要在用户自定义类型中重写tostring()方法

如tostring类重写了tostring()方法,返回字符串的值

public static void main(String[] args) {
String s=new String();
s="hello";
System.out.println(s);//相当于
System.out.println(s.toString());

}

基本类型数据转换为String类型时,调用对应包装类的tostring()方法

public static void main(String[] args) {

int a =10;

System.out.println("a="+a);

}

equals方法

1、在Object类中,equals方法比较的是两个对象的地址值,地址值相同返回true,否则返回false,以下是其源码:

public boolean equals(Object obj) {

return (this == obj);

}

“==”运算符的使用:对于基本数据类型,其比较的是对象的数值;对于引用数据类型,其比较的是对象的地址值。

在重写equals方法的最后使用了Objects.equals()函数,下面对其进行补充介绍:
Objects类是JDK7之后添加的一个工具类,它提供了一些方法来操作对象,它由一些静态的实用方法组成,这些方法是空指针安全的,其中Objects.equals()就是为了防止Object.equals()中容易出现空指针异常的现象
下面是Objects.equals()的源码:

public static boolean equals(Object a, Object b) {

return (a == b) || (a != null && a.equals(b));

}

 

posted @ 2022-07-05 11:47  夫君  阅读(66)  评论(0)    收藏  举报