具有混合访问级别Get/Set的MustOverride属性

rad*_*imd 4 vb.net oop

例如,Visual Basic允许具有混合访问级别的属性

Public Property Name() as String
    Get

    End Get

    Friend Set(ByVal value As String)

    End Set
End Property
Run Code Online (Sandbox Code Playgroud)

有没有办法定义MustOverride具有混合getter/setter访问级别的属性?

Jon*_*eet 6

嗯......你可以很容易地在C#中:

public abstract string Foo { get; protected set; }
Run Code Online (Sandbox Code Playgroud)

不幸的是,当我反编译时,Reflector会创建无效的VB ...

编辑:看了几个文档,我怀疑你不能这样做:( MustOverride文档说明:

不完整的宣言.指定MustOverride时,不为属性或过程提供任何其他代码行,甚至不提供End Function,End Property或End Sub语句.

这告诉我你不能指定不同的访问级别:(