Java基础Object类的toString方法

冷不防 2023-10-08 16:28 125阅读 0赞

关于Object类中的toString()方法

1、源代码长什么样?

  1. public String toString() {
  2. return this.getClass().getName() + "@" + Integer.toHexString(hashCode());
  3. }
  • 源代码上toString()方法的默认实现是:
  • 类名@对象的内存地址转换为十六进制的形式

2、SUN公司设计toString()方法的目的是什么?

  • toString()方法的作用是什么?
  • toString()方法的设计目的是:通过调用这个方法可以将一个“java对象”转换成“字符串表示形式”

3、其实SUN公司开发java语言的时候,建议所有的子类都去重写toString()方法。

  • toString()方法应该是一个简洁的、详实的、易阅读的.

示例代码:

  1. public class ObjectTest01{
  2. public static void main(String[] args){
  3. //创建时间对象
  4. MyTime m = new MyTime(2022,8,14);
  5. // 一个日期对象转换成字符串形式的话,我可能还是希望能看到具体的日期信息。
  6. String t = m.toString();
  7. //MyTime类重写toString()方法之前
  8. //System.out.println(t); // MyTime@28a418fc
  9. System.out.println(t);//2022年8月14日
  10. System.out.println(m.toString());//2022年8月14日
  11. // 注意:输出引用的时候,会自动调用该引用的toString()方法。
  12. System.out.println(m);//2022年8月14日
  13. }
  14. }
  15. class MyTime{
  16. private int year;
  17. private int month;
  18. private int day;
  19. public MyTime(){
  20. }
  21. public MyTime(int year,int month,int day){
  22. this.year = year;
  23. this.month = month;
  24. this.day = day;
  25. }
  26. // 重写toString()方法
  27. // 这个toString()方法怎么重写呢?
  28. // 越简洁越好,可读性越强越好。
  29. // 向简洁的、详实的、易阅读的方向发展
  30. public String toString(){
  31. return this.year + "年" + this.month + "月" + this.day + "日";
  32. }
  33. }

发表评论

表情:
评论列表 (有 0 条评论,125人围观)

还没有评论,来说两句吧...

相关阅读