為類別 (class) 的屬性 (attributes or date members ) 加上 getter 與 setter methods, 是一件很簡單但卻有點煩人的工作。善用Eclipse 所提供的自動產生getter 與 setter功能,將可大幅減輕程式設計的負擔並減少錯誤。
Student類別範例
如圖1所示,有一個 Student 類別,其中包含了兩個屬性,分別為 name 與 age。在Eclipse中,可以在該程式的工作區域中,按下滑鼠右鍵,選擇SourceàGenerate Getters and Setters以自動產生Getters 與 Setters(參考圖2)。
圖1:Student 類別
圖2:準備產生 Getters 與 Setters
之後,出現如圖3所示之畫面,在此我們可點選所要產生的Getters 與Setters。
圖3:選擇所要產生的Getters 與 Setters
圖4:Eclipse自動產生的Getters 與 Setters
圖4為Eclipse幫我們自動產生的 Getters 與 Setters。到此都非常簡單。但是,有些程式設計師喜歡在類別屬性之前加上 m_ 作為區別,如此一來,Eclipse 幫我們產生的Getters 與 Setters就會變成圖5的形式。原本的 getName()與getAge(),分別變成了 getM_name() 與 getM_age();而setName()與setAge(),則變成了setM_name() 與 setM_age()。這顯然不是我們希望的 Getters 與 Setters。
設定Eclipse 以產生正常的Getters 與 Setters
要修正上述問題,我們必須讓Eclipse知道我們對於屬性以 m_ 開頭的命名習慣。
請參考圖6,選擇 WindowàPreferences,之後出現如圖7之畫面。在圖7左方,我們點選 JavaàCode Style,並將右邊畫面的Fields 這個 Variable type 的Prefix list改為 m_。設定好之後我們讓Eclipse再產生一次Getters 與 Setters,此時就可得到正確的Getters 與 Setters(請參考圖8)。
圖5:將屬性加上 m_ 之後,Eclipse所產生的Getters 與 Setters
圖6:選擇WindowàPreferences 以執行Eclipse 設定功能
圖7:將Fields 這個Variable type 的Prefix list改為 m_
圖8:產生正確的 Getters 與 Setters
寫這麼久的code了... 看到學長這篇才發現... 原來Eclipse有這東西
回覆刪除這...這一篇都這麼久了... XD...Eclipse 出新版的時候,我都會把這一版有什麼新功能稍微看一下,看看有沒有值得馬上試用的功能。
回覆刪除