1. 程式人生 > >JAVA基礎get/set方法理解

JAVA基礎get/set方法理解

前言

在初學JAVA的時候,對最基礎的get()和set()方法一直很疑惑。

當我們將某些變數屬性設定為private(私有)後,就必須通過設定setXXX和getXXX方法來完成對成員變數的賦值和取值操作。

在剛開始學習java時一直很疑惑為什麼不直接將成員變數設為public(公有),直接操作成員變數不是更方便嗎?其實這樣設計是源於java的三大特性(封裝,繼承,多型)中封裝的概念。

正文

將類中某些成員變數設定為private,這樣

別的類就不能訪問了,然後在該類中定義兩個方法一個專門用於獲取(get),一個專門用於修改(set)

這樣的作用,是可以在不想讓別人隨意修改該欄位的時候,【在方法內寫一些限制條件】

例如:一個變數名稱為name,我們希望所有物件的name都不是"ABC",這樣我們就可以在setName()方法中新增限制條件。

private String name;

public void setName(String x)
{//設定限制條件
    if(x=="ABC")
{
    System.out.println("name禁止為ABC!")//報錯,name屬性修改失敗
}else{
    this.name=x;//若不為ABC則該物件的name修改成功
}
}