在 Java 中重写 toString():详细指南
toString() 方法是 Object 类的原生部分,起着在表示对象状态方面发挥着关键作用。在 System.out.println() 和调试等各种操作期间隐式调用此方法。然而,重写 toString() 需要仔细注意,以确保它生成有意义的输出。
一个常见的陷阱是在重写的 toString() 中使用参数化构造函数。如给定代码所示,Kid 类的第二个构造函数尝试使用 StringTokenizer 来分割日期字符串,并将结果分配给类变量。但是,此构造函数从未被显式调用,因此被视为无法从 toString() 方法访问。
正确重写 toString() 的关键是返回一个准确反映对象状态的 String。在提供的代码中,以下更新版本的 toString() 方法完成此任务:
public String toString() { return "Name: '" + this.name + "', Height: '" + this.height + "', Birthday: '" + this.bDay + "'"; }
此修订的 toString() 方法利用字符串连接来生成 Kid 对象的可读且信息丰富的表示。通过避免使用参数化构造函数并专注于返回 String,此实现确保在调用 toString() 方法时正确显示对象的数据。
以上是如何有效地重写Java中的toString()方法?的详细内容。更多信息请关注PHP中文网其他相关文章!