C# 3.0 自動實作屬性讓屬性宣告從數行縮減為單行,編譯器自動產生背端欄位,語法更簡潔自然。
每個屬性需宣告私有欄位並撰寫 get/set:
public class UserInfo {
string userName; string password;
public string UserName { get { return userName; } set { userName = value; } }
public string Password { get { return password; } set { password = value; } }
}
Visual Studio 雖提供「封裝欄位」重構,但屬性多時仍嫌繁瑣。
public class UserInfo {
public string UserName { get; set; }
public string Password { get; set; }
}
編譯器自動產生私有背端欄位,使用方式完全相同:
UserInfo user = new UserInfo();
user.UserName = "test";
user.Password = "test";
微軟在語言細節上的打磨,讓 C# 開發體驗持續領先。