學習記錄
//get 存取子 "提供",將該值(字串)進行判斷、處理再回傳
//set 存取子 "設定",用於處理計算及邏輯處理
範例一數字運算
class subclass
{
private double salary = 100.0;
//salary 成員則是透過公用唯讀屬性存取
public double Salary
{
get { return salary; }
set { salary = value; }
}
}
class Progam
{
static void Main()
{
subclass e = new subclass(); //實例化subclass類別,以產生new的物件"e"
Console.WriteLine("subclass e.ToString => {0}", e.Salary.ToString());
e.Salary = 1111;
Console.WriteLine("subclass e.ToString => {0}", e.Salary.ToString());
e.Salary += 1;
Console.WriteLine("subclass e.ToString => {0}", e.Salary.ToString());
Console.ReadKey();
}
}
get 存取子
執行基底類別
class subclass
{
private double salary = 100.0;
//salary 成員則是透過公用唯讀屬性存取
public double Salary
{
get { return salary; }
}
}
set含有特殊的keyword: value
當有值傳入時,都會存入value中
所以當執行 e.Salary = 1111; 會將預設值由100.0改成1111
透過公用屬性 set { salary = value; }
class subclass
{
private double salary = 100.0;
//salary 成員則是透過公用唯讀屬性存取
public double Salary
{
set { salary = value; }
}
}
以此類推
結果如下:
範例二 字串
class subclass
{
public string name;
//subclass class被實例化時,會立即執行建構子內容,並且可以傳入參數
public string nameGet
{
get
{
if (name != "")
{
return name;
}
else
{
return "default";
}
}
set
{
Console.WriteLine("NameGet : {0}", value);
}
}
public override string ToString() // 覆寫 subclass.ToString()
{
return "override string ToString = " + name;
}
}
class Progam
{
static void Main()
{
subclass e = new subclass(); //實例化subclass類別,以產生new的物件"e"
e.name = "JT";
Console.WriteLine("覆寫 e.Tostring : {0}", e);
e.nameGet = "Brayn";
//set含有特殊的keyword: value
// 當有值傳入時,會存入value中
// set
//{
// Console.WriteLine("帳號:{0}", value);
//}
Console.WriteLine("NameGet ToString => {0}", e.nameGet);
//get 存取子為 "提供",要返回結果
//get {
// if (name != "")
// {
// return name;
// }
// else
// {
// return "default";
// }
// }
Console.ReadKey();
}
}
// 覆寫 subclass.ToString()
class subclass
{
public override string ToString() // 覆寫 subclass.ToString()
{
return "override string ToString = " + name;
}
}
呼叫執行用法
Console.WriteLine("subclass e.ToString => {0}", e.Salary.ToString());
下面兩種方式 可呼叫相同結果
1. Console.WriteLine("e.Tostring : {0}", e);
2. Console.WriteLine("e.Tostring : {0}", e.tostring());
純記錄 ,練習回想,再測試。
有事沒事多學,學習活在當下,做一件事情後,學會一件事就好。 JT