Re: [問題] 請問toString的觀念

看板java作者 (遙遠的旅人)時間19年前 (2006/04/25 09:35), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串14/25 (看更多)
※ 引述《Itsuki.bbs@henry.twbbs.org (小樹=小天)》之銘言: : toString()這個method在Object物件裡頭就有了,所以不管你有沒有 : 改寫這個method,都是呼叫到Object的toString() : 至於為什麼會是一堆你看不到的字元,那是因為印出來的字串是指該tom物件實體 : 所存在的記憶體位址 : 為什麼tom和tom.toString()一樣..我覺得這是compiler幫您做掉的動作.. : 也就是當您用println(tom)時..compiler會自動幫您呼叫tmo.toString() : 就像"abc"+1234在println()裡頭是一樣的作法.. 這裡應該不是Compiler幫你作,而是System.out的Print(Object obj)方法本身內部 實做時就是用obj.toString()來取得輸出的內容: public void print(Object obj) { write(String.valueOf(obj)); } 而String.valueOf(obj)實際的操作長這樣: public static String valueOf(Object obj) { return (obj == null) ? "null" : obj.toString(); } Trace API Source Code其實是很有趣的事情,特別是Eclipse對需要作這種事情的人 來說實在是太好用了。 不過,看Doc理解物件的行為跟規則是很重要的技巧,不然對於沒有Source的Library 你就一點辦法也沒有了。 迷之聲:(所以,openSource是好物。) -- JAVA 是一個靜態型別reference指定、強物件型別判定的語言。 屬於類C/C++族。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 60.248.27.110
文章代碼(AID): #14JNpHmN (java)
討論串 (同標題文章)
文章代碼(AID): #14JNpHmN (java)