參考:
筆記:
- System.out.println(),System.out.println()內部實現時,用到String.valueOf(x),String.valueOf(x)實現時有用到:obj.toString(),obj.toString()又用到:return getClass().getName() + "@" + Integer.toHexString(hashCode());
- 從中我們不難看到每個類如果沒有重寫toString()函數的話,默認是返回該類的名稱 + “@” + 該對象hashCode值得十六進制數字;
- 所以JDK官方是推薦我們所有的類都應該重寫此類(It is recommended that all subclasses override this method.)。如果我們在上面的Person類中重寫該方法,那么System.out.println語句就會按照我們的重寫的toString()方法打印對象信息,如下: