Re: [問題] 有關static 的問題??

看板java作者 (每天進步一點點)時間18年前 (2007/07/23 06:55), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/3 (看更多)
※ 引述《mixfuture (恩)》之銘言: : 新手一直發問....麻煩各位前輩解答..感激不盡 : class A : { : static int i=10; : } : final class B extends A : { : int i =5; : public static void main(String [] args) : { : System.out.println(i); : } : } : 1.編譯時發生錯誤,因為子類別不能宣告成final 錯,可以宣告成final : 2.編譯時發生錯誤,靜態方法不能取用物件屬性 static method不能存取與物件相關的data member,或member function 原因就在static method並沒有this這個參考 : 3.執行時列出"10" static data field不用產生instance就能存取, A.i : 4.執行時列出"5" 與物件相關的data field必須要有instance才能存取 : 我編譯的時出現錯誤 上面出現 說 varible i cannot be refrecnce from static context : 是指選項2的答案嗎? 要產生instance才能存取 EX: B b = new B(); System.out.print(b.i); : 我想在請問 : 1.子類別是否可以寫成final 如果可以表示說"繼承完後 不能在被其他人繼承" 這是對的 : 2.如果我今天想要印出i值,我是不是必須在class A中 : 寫一個 static {int i =10 } 這樣呢? ????????????????????不是很懂你的意思 我想上面應該有解了你這個問題了! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.170.48.82 ※ 編輯: tgbsa 來自: 218.170.48.82 (07/23 07:04)
文章代碼(AID): #16e-17c7 (java)
文章代碼(AID): #16e-17c7 (java)