0%

C# —— get與set存取器

get與set存取器

get :當外界讀取屬性時,會自動啟動get程式區塊執行,透過return敘述將指定的欄位變數的內容傳回(唯讀)。

set :在存入數值時自動呼叫,用於處理計算及邏輯處理(唯寫),自帶value變數,當有傳入值時會自動帶入value。

Example :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Class User
{
private int hp = 20; //給予初始值
public int HP
{
get { return hp;} //讀取時回傳hp
set {
if(value < 0)//當有傳入值時判斷
{
hp = 0;//小於0 hp就等於0
}
else{
hp = value;//不小於0 hp就等於傳入的值
}
}
}
}

private void btn1_Click(object sender, EventArgs e)
{
User user = new User();

MessageBox.Show(user,HP);//20

}

如果只想讓程式只能唯讀的話,就可以把set拿掉,或是只想要唯寫就可把get拿掉。

1
2
3
4
public int HP
{
get { return hp; }
}

文章若有錯誤或想交流,還不吝嗇給予指教哦