📅  最后修改于: 2023-12-03 15:27:54.566000             🧑  作者: Mango
在Java中,每个对象都继承了 Object
类。这个类中有一个方法 toString()
,它返回一个表示当前对象的字符串。
在很多情况下,我们可能需要自定义 toString()
的实现,以便更好地描述对象。这个过程被称为“覆盖 toString()
”。
toString()
要覆盖 toString()
,只需要在你的类中添加一个 toString()
方法并实现它。例如:
public class Person {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
@Override
public String toString() {
return "Person{" +
"name='" + name + '\'' +
", age=" + age +
'}';
}
}
在这个例子中,我们重写了 toString()
方法,返回一个包含人名和年龄的字符串。
toString()
在调试代码和输出日志时,toString()
返回的字符串很有用。如果没有覆盖 toString()
,默认的实现可能不会提供有用的信息。
通过覆盖 toString()
,我们可以自定义一个表示对象的字符串,使得我们更容易理解其状态和属性。
在覆盖 toString()
时,需要考虑到对象的所有属性,并逐个将它们添加到返回的字符串中。
另外,请记住在 toString()
方法的实现中保持一致性。如果两个属性有相同的含义,那么它们应该被呈现在相似的简洁格式中。
通过覆盖 toString()
,我们可以自定义表示对象的字符串,从而更好地理解对象的状态和属性。在编写Java代码时,经常需要覆盖 toString()
,以便更好地调试和输出日志。