Object类中的toString方法重写

一、简介:

方法返回值:String;

方法格式:public void toString(){

         ...方法体...

}

作用:返回调用该方法的对象的字符串表示--(就是将对象用字符串表示出来,其实就是对象在内存中的地址;)


二、重写:

为什么子类要重写toString方法?

 答:因为实际编程过程中,输出对象在内存中的地址是没有任何意义的,因此类似于重写equals方法中的比较对象的属性值,在toString方法中,返回(输出)对象中的属性才是更加贴近实际的,也是最实用的;因此需要重写该方法才能得到我们想要的输出结果;


三、toString方法存在的意义?举例表示//https://部分内容摘自:zhidao.baidu.com/question/711483416345565405.html  

情况一:

public class A{
public String toString(){return "this is A";}
}
如果某个方法里面有如下句子:
A obj=new A();
System.out.println(obj);
会得到输出:this is A

情况二:

public class A{
public String getString(){return "this is A";}//toString改为getString
}
A obj=new A();
System.out.println(obj);
会得到输出:xxxx@xxxxxxx的类名加地址形式
System.out.println(obj.getString());
会得到输出:this is A


四、toString方法的源码如下

public String toString() {

return getClass().getName() + "@" + Integer.toHexString(hashCode());

}



你可能感兴趣的:(Object类中的toString方法重写)