我需要關於「自動實現」與c#有關的信息,以及如何以及在哪裏可以使用它?什麼是C#中的「自動實現」?
0
A
回答
4
我能想到的最接近你想說的是Auto-Implemented Properties。
前C#3.0,如果你想寫一個公共屬性,你需要做到以下幾點:
private string _name;
public string Name
{
get { return _name; }
set { _name = value; }
}
它沒有邏輯,是大量的樣板代碼真的。
現在,在C#3.0,你可以去:
public string Name { get; set; }
的框架可以照顧到所有的樣板東西給你。只要您仍遵守與傳統屬性相同的規則,您也可以混合並匹配獲取者/設置者的不同可見性級別。
0
您可能已經聽說過術語Auto-Implemented Properties。
這指的是使用的速記寫入像這樣的屬性:
public string Name { get; set; }
注意的是,以上是快了很多,比這個寫:
private string _name;
public string Name
{
get { return _name; }
set { _name = value; }
}
還要注意的是自動實現版本不包含任何明確的私有字段聲明;這是因爲這個字段是由編譯器自動生成的,所以術語「自動實現」。
4
如果你的意思的屬性,看看這裏:Auto-Implemented Properties (C# Programming Guide)
例如:
public class PurchaseOrder
{
public double TotalPurchases { get; set; }
public double MaxPurchases { get; private set; }
public PurchaseOrder()
{
this.MaxPurchases = 10;
}
}
TotalPurchases
可以讀取或任何其他公共呼叫寫入。
MaxPurchases
僅由當前對象設置,但可以通過任何其他公共呼叫讀取。
1
你的意思是Auto-Implemented Properties?
從MSDN:
在C#3.0和更高,自動實現的屬性使屬性聲明更簡潔當在屬性訪問不需要額外的邏輯。它們還使客戶端代碼能夠創建對象。 ...編譯器創建一個私人的,匿名的後臺字段,只能通過屬性的get和set訪問器來訪問。
實質上,它的簡單語法用於聲明具有簡單getter和setter的屬性。
相關問題
- 1. 什麼是自動實現的屬性
- 2. C#中System.load(dll)的實現是什麼?
- 3. 什麼是C#中使用自動實現的屬性的好處
- 4. 什麼是推薦的Bcrypt C實現?
- 5. C#SQL:實現動態表的最佳方式是什麼?
- 6. 在c/C++中實現神經網絡的方法是什麼?
- 7. `strtol`的實現是什麼?
- 8. 爲什麼在c#中而不是C++中實現IDataReader類?
- 9. C#中自動實現的屬性
- 10. QCryptographicHash - 現實中的SHA3是什麼?
- 11. JavaScript中的「依賴實現」是什麼?
- 12. Java中的本地實現是什麼?
- 13. C中的一個好的開源B樹實現是什麼?
- 14. 在Delphi中實現C#的BackgroundWorker的最佳方式是什麼?
- 15. 實現是什麼意思?
- 16. 什麼是具體實現?
- 17. 什麼是AppDelegate實現? PushNotificationIOS
- 18. 實現IIdentity,AuthenticationType是什麼?
- 19. 什麼是實現分頁
- 20. C++中如何自動實現11
- 21. 在C#中實現Retry Wrapper的最佳方式是什麼?
- 22. 什麼是頭文件和C++中的實現文件?
- 23. C#中顯式接口實現的優點是什麼?
- 24. 什麼是C++中的標準延遲/終結器實現?
- 25. C++中的接口與實現。這是什麼意思?
- 26. 在C#中實現IDisposable的正確方法是什麼?
- 27. 什麼是在C++中實現多態的不同方法
- 28. 在C#中使用自動實現的屬性是否正確?
- 29. 在C#對象中實現動態屬性的最佳方式是什麼?
- 30. 什麼是在Wpf中實現ScrollViewer的動態方式
哇,它的一種簡單的編寫代碼的方式,謝謝 – Arash 2010-08-18 09:49:13