【发布时间】:2020-12-17 09:03:13
【问题描述】:
在我的程序上使用代码分析我经常收到这个警告:
CA1051:Microsoft.Design:由于字段“Form1.Testcode”在其声明类型之外可见,因此将其可访问性更改为私有并添加一个与该字段当前具有相同可访问性的属性,以提供对其的访问。
所以它告诉我要么更改以下代码:Public Testcode As String
对此:Public Property Testcode As String
或者到这个:
Private _testcode
Public Property Testcode As Object
Get
Return _testcode
End Get
Set(value As Object)
_testcode = value
End Set
End Property
所以我的问题是,这两个代码建议有什么区别。 一个比另一个快还是它可以防止错误或其他任何东西?从那时起我就一直在使用第一个代码,并且从来没有遇到过任何问题,也没有感觉滞后或其他问题。
说我希望我的程序尽可能快,我应该将我拥有的代码更改为属性代码,如果是,选择哪个?
【问题讨论】:
-
它与速度/性能无关。
Fields通常保留Private到类,并使用 Properties` 访问。这允许在从类中检索数据时进行一定程度的抽象。理论上,您可以在返回值之前对属性进行验证,或者在不影响访问它的外部类的情况下更改字段实现。此外,您可以使用属性设置数据的访问级别,例如将其设为 ReadOnly
标签: vb.net properties private public