Re: [問題] 在類別中生成一個自己的實例(static用 …

看板java作者 (Tis)時間17年前 (2007/07/13 13:22), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/8 (看更多)
※ 引述《godfat (godfat 真常)》之銘言: : ※ 引述《Ronamtis (Tis)》之銘言: : : 我的問題是:在 AccountDB 類別產生了一個 AccountDB 自己的實例,這到底是怎 : : 麼回事呢?是否因為 onlyInstance 被宣告成 static,只有在類別第一次被呼叫時 : : 會產生出來,所以不會發生無窮迴圈的問題? : 說到這,我倒是真的幹過無窮產生的問題﹍不過這是題外話 : 你可以把 static 想成 class, 所以 static method => class method : static field => class field : class 當然只有一個,所以沒有問題,這是你的 class 去存取一個 instance, : 不是 class 存取 class 也不是 instance 存取 instance. : 個人認為這是 C 的禍害 :o : 讓人困惑的 static 多重意義,java 早就沒有最早的 static 了 感謝諸位大大的回答,我也看了良葛格筆記和蔡學鏞先生寫的解說: http://www.oreilly.com.tw/column_sleepless.php?id=j021 觀念比較清楚了!不過在蔡學鏞的解說中提到 如果某 class 的 class method 或 instance method 欲使用到某 instance 的 某 instance method,就必須在前面冠上此 instance 名稱,例如:obj.classMethod() 所以 static 函式成員使用非 static 函式成員的話會發生錯誤,因為沒有 this 參考, 但是可是自行加上物件名稱來使用非 static 的函式成員,例如 obj.instanceMethod() 囉?(不知道自己有沒有在鑽牛角尖 :p) : : 沒用實體變數的 method (或物件?)不會佔用 heap 的空間,但是怎麼執行的呀? : : 觀念很不清楚,不知道有沒有善心人士可以指點一下迷津...謝謝 :) : 記憶體不是只有 heap 啊 :o 瞭解了 :p -- ★ .   * ★ * ★ . ☆ . ☆ * * . ★ * . * . ★ . -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.119.44.232
文章代碼(AID): #16bmm92n (java)
討論串 (同標題文章)
本文引述了以下文章的的內容:
以下文章回應了本文
完整討論串 (本文為第 3 之 8 篇):
文章代碼(AID): #16bmm92n (java)