看板 java 關於我們 聯絡資訊
這幾天再復習Java使用講師林信良的Java SE7 技術手冊 再寫書上網站所附的練習題的時候,有一題答案有點納悶? 1. 如果有以下程式片段: public class Some { private Some some; private Some() {} public static Some create() { if(some == null) { some = new Some(); } return some; } } 以下描述何者正確? (A) 編譯失敗 (B) 客戶端必須 new Some()產 Some 生實例 (C) 客戶端必須 new Some().create()產生 Some 實例 (D) 客戶端必須 Some.create()產生 Some 實例 答案:D 我覺得答案應該是(A),因為static方法不能使用非static資料成員 請問我的理解對嗎? 我實際run,也是有錯誤: non-static variable pra cannot be referenced from a static context -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.160.238.102
realmeat:你是對的 10/10 07:59
JustinHere:private static Some some; // 題目少打 static 了 XD 10/10 16:50
LaPass:題目有錯.... 話說我居然沒一眼看出錯誤.... = = 10/10 21:40
Killercat:因為它漏字 最上面少了一個static 10/11 12:56