C# get & set 存取子(accessors) - 教學筆記(使用visual studio)
文章推薦指數: 80 %
C# get & set 存取子class的屬性(Property)可以讓讀、寫、運算機制變得更有彈性, 在這裡要介紹屬性的一個特殊的methods,稱為: 存取子(accessors), ...
C#get&set存取子(accessors)-教學筆記(使用visualstudio)
C#get&set存取子(accessors)-教學筆記(使用visualstudio)
December8,2016
PostedBy
AdamOu-Yang
Accessors存取子c#教學
C#get&set存取子
class的屬性(Property)可以讓讀、寫、運算機制變得更有彈性,
在這裡要介紹屬性的一個特殊的methods,稱為:存取子(accessors),也可稱為訪問器
存取子包含get存取子、set存取子
get可以形容成“提供”,要返回結果
set則可形容成“設定”,多數在處理計算及邏輯處理
那存取子有甚麼功用呢?
例如:在一般情況下,將變數的狀態屬性設定為string,就只能用來存取字串,int就只能用來處理整數
在class中,這些狀態屬性就可以透過存取子做額外加入邏輯判斷等描述式
get範例
可以透過get存取子,將字串進行判斷、處理….再返回結果
//建立A類別
publicclassA
{
//包含兩個string
publicstringname;
publicstringst
{
//使用get存取子
get{
if(name!="")
{
returnname;
}else
{
return"default";
}
}
}
}
staticvoidMain(string[]args)
{
//實例化A類別
Ax=newA();
//設定A.name
x.name="Brown";
//取得st
Console.WriteLine("帳號:"+x.st);
}
set範例
set含有特殊的keyword:value
當有值傳入時,都會存入value中
//建立A類別
publicclassA
{
//包含兩個string
publicstringv;
publicstringst
{
//使用set存取子
set
{
//不多解釋,傳入值都會存在value
Console.WriteLine("帳號:"+value);
}
}
}
staticvoidMain(string[]args)
{
//實例化A類別
Ax=newA();
//A.st傳入值
x.st="Adam";
}
getandset範例
可以試著執行,看看結果會是如何
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Text;
usingSystem.Threading.Tasks;
namespaceConsoleApplication2
{
classProgram
{
//建立A類別
publicclassA
{
publicstringv;
publicstringname;
//Aclass被實例化時,會立即執行建構子內容,並且可以傳入參數
publicstringShow
{
get{returnname;}
set{
name=v;
Console.WriteLine("Iam"+value);
}
}
}
staticvoidMain(string[]args)
{
//實例化A類別
Ax=newA();
x.v="Brown";
x.Show="Joe";
Console.WriteLine(x.Show);
}
}
}
<
延伸文章資訊
- 1C# Get Set Modifier
The get set accessor or modifier mostly used for storing and retrieving the value from the privat...
- 2C# Properties (GET, SET) - Tutlane
In c#, properties will enable class variables to expose in a public way using get and set accesso...
- 3JavaScript - 屬性描述器(2) - iT 邦幫忙
我們又稱 get 與 set 為存取器描述器( accessor descriptor ) 。 ... { // ... get: function() { // ... do somethin...
- 4C# set 與get 用法與範例| 高清水_黑白講 - - 點部落
//get 存取子"提供",將該值(字串)進行判斷、處理再回傳 ... 唯讀屬性存取 public double Salary { get { return salary; } set { sa...
- 5What is the { get; set; } syntax in C#? - Stack Overflow
The get/set pattern provides a structure that allows logic to be added during the setting ('set')...