首頁  >  文章  >  Java  >  如何在Java中使用Accessor和Mutator?

如何在Java中使用Accessor和Mutator?

藏色散人
藏色散人原創
2019-03-22 15:20:378334瀏覽

實作資料封裝的一種方法是使用accessors 和Mutators。 accessors 和Mutators的作用是傳回和設定物件狀態的值。讓我們學習如何用Java來寫accessors 和Mutators。例如,我們將使用Person類,它的狀態和建構函數已經定義:

如何在Java中使用Accessor和Mutator?

#accessor方法

accessors 方法用於傳回私有欄位的值。它遵循一種命名方案,將“get”前綴放在方法名稱的開頭。例如,讓我們為firstname、middleNames和lastname新增Mutator方法:

這些方法總是傳回與其對應的私有欄位相同的資料類型(例如String),然後只傳回該私有欄位的值。

我們現在可以透過Person物件的方法來存取它們的值:

Mutator方法

使用mutator方法設定私有欄位的值。它遵循一種命名方案,將單字“set”前綴放在方法名稱的開頭。例如,讓我們為位址和使用者名稱新增mutator欄位:

這些方法沒有傳回類型,並且接受與其對應的私有欄位相同的資料類型的參數。然後使用該參數設定該私有欄位的值。

現在可以修改Person物件中的位址和使用者名稱的值:

為什麼使用accessors 和Mutator?

我們可以定義類別的私有欄位更改為public,並獲得相同的結果。重要的是要記住,我們希望盡可能地隱藏物件的資料。這些方法提供的額外緩衝區允許我們:

改變資料在幕後的處理方式。

對欄位設定為的值進行驗證。

假設我們決定修改儲存中間名稱的方式。我們現在可以使用字串陣列而不是一個字串:

物件內部的實作已經更改,但是外部世界沒有受到影響。方法的呼叫方式完全相同:

或者,假設使用Person物件的應用程式只能接受最多10個字元的使用者名稱。我們可以在setUsername變數中新增驗證,以確保使用者名稱符合以下要求:

現在,如果傳遞給setUsername mutator的使用者名稱超過10個字符,它將自動被截斷。

相關推薦:《Python教學

以上是如何在Java中使用Accessor和Mutator?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn