1. 程式人生 > >Java——set()和get()的作用

Java——set()和get()的作用

我們先來看看set和get這兩個詞的表面意思,set是設定的意思,而get是獲取的意思,顧名思義,這兩個方法是對資料進行設定和獲取用的。而且,在類中使用set和get方法時,都是在set和get後面跟上一些特定的詞來形成特定意思的方法名,比如setage()和getage(),表示設定年齡和獲取年齡。

至於為什麼會有set方法和get方法,主要是JAVA面向物件程式設計中的封裝性安全性

封裝性即對類中的域變數進行封閉操作,即用private來修飾他們,如此一來其他類則不能對該變數訪問。這樣我們就將這些變數封閉在了類內部,這樣就提高了資料的安全性,當我們想要操作這些域變數怎麼辦呢?我們可以通過兩種方法:

第一種即通過public方式的構造器(或稱建構函式),物件一例項化就對該變數賦值。該方法不方便後期更改資料。

第二種就是通過上面提到的set和get方法。這裡我舉一個特定的例子,我定義一個Person類,該類中有name、age這兩個私有域變數,然後我定義setname()、getname()、setage()、getage()這四個方法,通過這四個方法來實現對name和age的操作。這樣一來,我不用直接對Person類中的域變數操作,而是通過set和get方法間接地操作這些變數,這樣就能提高域變數的安全性,同時又保證了域變數的封裝型。

總結: 實現封裝的關鍵在於絕對不能讓類中的方法直接地訪問其他類的例項域,程式僅通過物件的方法與物件資料進行互動。set()和get()是實現封裝的手段之一,通過它們對私有域變數進行操作,提高了重用性和可靠性。