始终要覆盖toString
这个这是建议,覆盖不覆盖对程序本身的运行是不产生影响的,它只是由于在调试的时候更想看到的是覆盖后输出的对象有用的信息。
public class User {
private String name;
private int age;
private String address;
public User(String name, int age, String address) {
this.name = name;
this.age = age;
this.address = address;
}
@Override
public String toString() {
return "User{" +
"name='" + name + '\'' +
", age=" + age +
", address='" + address + '\'' +
'}';
}
public static void main(String[] args) {
System.out.println(new User("小宁",25,"北京"));
//没有覆盖toString方法时候的输出:com.tk.portal.bean.User@4c203ea1
//覆盖toString方法时候的输出User{name='小宁', age=25, address='北京'}
}
}
结论
覆盖toString就是为了调试或者打印的时候可以更直观的看到对象的有用的信息,所以建议写新写类的时候要覆盖toString方法。