我只是用於win 8應用程序的c#編程。我遇到了下面的類定義,我不明白那裏的get和set行。這是創建標準獲取者和設置者的捷徑嗎?我很困惑 ?謝謝C#語法解釋
class MenuItem
{
public string Title { get; set; }
public string Subtitle { get; set; }
public ImageSource Image { get; set; }
}
我只是用於win 8應用程序的c#編程。我遇到了下面的類定義,我不明白那裏的get和set行。這是創建標準獲取者和設置者的捷徑嗎?我很困惑 ?謝謝C#語法解釋
class MenuItem
{
public string Title { get; set; }
public string Subtitle { get; set; }
public ImageSource Image { get; set; }
}
它們是用C#3.0引入的Auto Implemented properties。
在C#3.0和更高,自動實現的屬性使 屬性聲明更簡潔當不需要附加的邏輯在屬性訪問 。
爲了您的財產:
public string Title { get; set; }
是一樣的:
private string _Title;
public string Title
{
get { return _Title; }
set { _Title = value; }
}
編譯器將添加支持私有字段。它們適用於在屬性的get/set中不需要邏輯的場景。如果要使用set
或get
實施自定義規則,則不能使用自動實施的屬性。
在C#3.0中添加了「自動實施的屬性」。你可以閱讀關於他們on MSDN here。實際上,編譯器將創建一個專用的後臺字段。
是的,它只是一個使用Getters&Setters的簡介。在c#中,你不用像你這樣做的方法寫getters和setter。我建議你閱讀下面的文章:http://msdn.microsoft.com/en-us/library/w86s7x04.aspx – Svexo