从概念上讲,派生类似乎应该能够使用读写属性覆盖只读属性。为什么这不可能?
Public Class Base
Protected _name As String
Public Overridable ReadOnly Property Name() As String
Get
return _name
End Get
End Property
End Class
Public Class Derived
Inherits Base
Public Overrides Property Name() As String
Get
Return MyBase.Name
End Get
Set(ByVal value As String)
_name = value
End Set
End Property
End Class
最佳答案
我不同意,更改基类属性的只读访问权限似乎毫无意义。
VB ReadOnly 的规则经过仔细定义: http://msdn.microsoft.com/en-us/library/z2b2c2ka.aspx#Y300
基类作者可以将属性标记为只读。
您不会知道更改属性值的后果是什么。
关于.net - 为什么不能用 .net 中的读/写属性覆盖只读属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5406344/