[英]C# - Getters/Setters different from other languages
在 Java 中 Getter 和 setter 的工作方式如下:
public string GetPersonName() {
return this.PersonName;
}
在 C# 中它可以以相同的方式工作,但問題是我看到人們正在使用這種語法
public string PersonName { get; set; }
希望有人能幫我澄清一下,謝謝!
public string PersonName { get; set; }
實際上相當於
private string personName;
public string PersonName
{
get { return personName; }
set { personName = value; }
}
C# 3.0 中引入了自動實現的屬性,以使代碼更具可讀性/簡潔。
Java 沒有“真正的”屬性。 GetPersonName 是一個方法而不是一個“屬性”。
如果成員表示該類型的邏輯屬性,請考慮使用屬性。 切勿將屬性用於長時間運行的操作!
您還應該閱讀有關 C# 中的屬性的文章https://msdn.microsoft.com/en-us/library/ms229054(v=vs.100).aspx
這只是減少打字的一種簡化方式。 它被稱為自動實現的屬性
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.