这两天学习了Object其中的两个默认方法————toString,下面借用马老师的例子说明:
public String toString()返回该对象的字符串表示。通常,toString 方法会返回一个“以文本方式表示”此对象的字符串。结果应是一个简明但易于读懂的信息表达式。建议所有子类都重写此方法。
public class Test {
public static void main(String[] args){
Dog d = new Dog();
System.out.println("d="+ d.toString());
}
}
class Dog{
}
输出结果:d=Dog@c17164,原因是子类调用了默认基类Object的toString方法,该方法返回的是:类名+其哈希编码。
如果重写toString方法,把代码改成:
public class Test {
public static void main(String[] args){
Dog d = new Dog();
System.out.println("d="+ d.toString());
}
}
class Dog{
@Override
public String toString(){
return "I am a brave Dog"
}
}
重新运行结果为:I am a brave Dog
所以在基类是Object的时候,toString方法建议重写