Object类是所有Java类的根类,其他类都继承自Object类,不需要显示的使用import调用,她由解释器自动引入。
Object类的常用方法之一就是toString()方法,返回该对象的字符串表示。默认的格式是类名@对象的十六进制哈希码。
为了得到我们想要输出结果,我们可以对toString方法进行重写覆盖。
package myfirst_Java;
public class Hello{
public void print() {
System.out.println("");
}
//主程序入口
public static void main(String[] args) {
Hello h=new Hello();
// 直接打印这个对象,默认是调用toString()方法
// 默认的对象返回格式是:类名@对象的十六进制哈希码
System.out.println(h);
System.out.println(h.toString());
}
}
接下来我们对toString方法进行重写覆盖,以返回我们想要的结果
package myfirst_Java;
public class Hello{
// 重写覆盖toString方法
public String toString() {
return "我修改了toString,返回我想要的结果";
}
public void print() {
System.out.println("");
}
//主程序入口
public static void main(String[] args) {
Hello h=new Hello();
// 直接打印这个对象,默认是调用toString()方法,下面行代码是一样的。
// 默认的对象返回格式是:类名@对象的十六进制哈希码
System.out.println(h);
System.out.println(h.toString());
}
}
那么toString究竟有什么用呢,我的理解是让我们打印对象时,更加清楚的反映我们想要的结果,比如描述一个对象,而不是默认的类名@对象的十六进制哈希码。