Re: [問題] 這種宣告是什麼意思
※ 引述《tramp ( )》之銘言:
: → woodymonkey:有人喜歡寫成methods而不用屬性的寫法嗎?屬性的概念 10/29 03:09
: → woodymonkey:只有C#有,感覺跟其他oop語言的概念不是很通用… 10/29 03:11
: → abgne:假設有個age 最小不能是18..當要set成18時 就能先判斷.. 10/29 15:46
寫成屬性跟寫成方法原則上是一樣的. 在中間語言裡仍然會把屬性轉成方法
所以他們之間的差別就是在於你程式的可讀性
// 用 method
class StudentM
{
private string m_Name;
public string GetName() {return m_Name;}
public void SetName(string value) {m_Name=value;}
}
// 你在使用時就是要這樣
StudentM stdm = new StudentM();
stdm.SetName("John");
string StudentName = stdm.GetName();
// 用 property
class StudentP
{
private string m_Name;
public string Name
{
get{return m_Name;}
set{m_Name = value;}
}
}
// 用起來是像這樣
StudentP stdp = new StudentP();
stdp.Name="John";
string StudentName = stdp.Name;
這兩個語言, 到了中間語言的階段其實都會變成一樣的... 只是 method 名稱不一樣
但是在開發中的話... 哪一種寫法比較好閱讀應該還不錯明顯吧 ^^"
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.168.89.191
※ 編輯: KvsG 來自: 118.168.89.191 (10/30 10:21)
討論串 (同標題文章)