![](/img/trans.png)
[英]What are the Benifit/Advantage of c#/VB.net Property Properties - Private access modifiers for Setters
[英]What are the advantages of the Property keyword in VB.NET over using a Private field with getters and setters?
在VB.NET中,使用Property
关键字而不是:
Private MyProperty as String
Public Sub setP(ByVal s as String)
MyProperty = s
End Function
Public Function getP() as String
return MyProperty
End Function
来自Java我倾向于使用这种风格而不是Property...End Property
- 有什么理由不这样做吗?
您正在完成编译器所做的工作。 Property关键字的优点:
VS2010中使用auto属性语法的相同声明:
Public Property P As String
编译器自动生成getter和setter方法以及私有支持字段。 必要时,您可以重构访问器。
您将从使用getter和setter获得的属性中获得一些额外的好处。
像反射一样可以轻松找到所有属性,因为有方法可以实现。
例如,ORM很容易找到你的属性,但是他们很难找到getter setter,因为惯例是使用这些属性。
所以在功能上它们可能是相同的,但惯例是使用属性。
使用Properties使visual studio编辑器能够在属性网格中显示/编辑它。 如果要创建其他人将使用的控件或DLL,则可以使用它们来更改属性网格中的设计时属性。
如果将控件添加到窗体,然后将网格的SelectedObject属性设置为类/控件的实例,则属性网格控件也可以选择它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.