Object类是所有类的父类 所有子类都可以用他的方法
先看一个应用实例:
public class temp {
public static void main(String[] args) {
Child p = new Child();
System.out.println(p);//本质如下 使用了父类Object的toString方法
System.out.println(p.toString());
//两个结果相同 均为:TestObject.Child@8efb846
}
}
class Child{
int num;
String name;
}
现在我们在Child的类中重写toString方法,再在main方法中调用toString方法。
public class temp {
public static void main(String[] args) {
Child p = new Child(1001,"路人甲");
System.out.println(p);//本质如下 使用了父类Child的toString方法
System.out.println(p.toString());
//两个结果相同 均为:Child [num=1001, name=路人甲]
}
}
class Child{
int num;
String name;
public Child(int num, String name) {
super();
this.num = num;
this.name = name;
}
@Override
public String toString() {
return "Child [num=" + num + ", name=" + name + "]";
}
}
此时在main方法中调用toString,实际上调用的为Child类中重写之后的toString方法。