vb.net – 私有变量实例化:何时定义或在构造函数内?
发布时间:2020-12-17 07:28:08 所属栏目:百科 来源:网络整理
导读:我不知道以前是否曾经问过这个问题,但我们今天在工作中正在讨论它.私有变量(共享/静态)是否应该在标注/定义时实例化,或者在构造函数中执行此操作是否更好? 例如,这对我来说似乎完全没问题…… Public Class IpCam Private Const HOST As String = "http://t
我不知道以前是否曾经问过这个问题,但我们今天在工作中正在讨论它.私有变量(共享/静态)是否应该在标注/定义时实例化,或者在构造函数中执行此操作是否更好?
例如,这对我来说似乎完全没问题…… Public Class IpCam Private Const HOST As String = "http://test.com/url/example" Private Shared _Example As New OurClass(HOST) Public Shared ReadOnly Property Example() As OurClass Get Return _Example End Get End Property End Class 但是其他人告诉我它应该这样做…… Public Class IpCam Private Const HOST As String = "http://test.com/url/example" Private Shared _Example As OurClass Public Sub New() _Example = New OurClass(HOST) End Sub Public Shared ReadOnly Property Example() As OurClass Get Return _Example End Get End Property End Class 有什么不同?关于使用哪一个,是否存在共识? 解决方法
这真的是一个偏好问题.我认为更重要的是一致性:如果你在内联中实例化一些变量,而在构造函数中实例化其他变量,则可能会更难维护,因为不清楚实例化的位置.
一个好主意是将变量声明保持在构造函数的上方(这样您就不必跳转来查找所有变量实例化),并实例化内联的所有内容.对于那些需要更复杂的初始化代码的少数对象,可以使用构造函数. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |