打印类对象自动调用toString方法

1.System.out.println(),System类中的out字段是标准输出流,out是static PrintStream类型的

2.PrintStream类有println函数,其重载形式有参数是Object的:public void println(Object x)。打印Object,然后终止该行。此方法首先调用 String.valueOf(x) 获取打印对象的字符串值,然后的行为如同先调用print(String),再调用println()一样。

3.String类的valueOf函数:public static String valueOf(Object obj),返回Object,参数的字符串表示形式。查看valueOf源码如下:public static String valueOf(Object obj) {return (obj == null) ? "null" : obj.toString();}。所以说在打印一个类对象时会自动调用toString方法,如果是自己写的类要记得覆盖了这个方法。

原文地址:https://www.cnblogs.com/chuanqi1995/p/10677402.html