【发布时间】:2010-11-08 05:21:10
【问题描述】:
具有受保护构造函数的类和标记为MustInherit 的类有什么区别? (我在 VB.Net 中编程,但它可能同样适用于 c#)。
我问的原因是因为我有一个抽象类,我想将构造函数转换为共享/静态方法。 (添加一些约束)。
我不能这样做,因为无法在共享函数中创建实例。
我正在考虑删除 MustInherit 关键字。这会有什么不同吗?
谢谢。
预计到达时间:
我想我已经回答了我的问题,如果我删除 MustInherit 关键字,我就不能再包含 MustOverrides,这非常有用。
考虑到这一点,有什么办法可以解决我的问题吗?
ETA2:
为了澄清,除非我删除 MustInherit 关键字,否则我不能执行以下操作?
Public MustInherit MyBaseClass
Private Sub New()
End Sub
Protected Function CreateInstance(ParmList) As MyBaseClass
If ParmList is Ok Then Return New MyBaseClass()
End Function
End Class
【问题讨论】:
-
你应该指出你在说什么语言。
-
谢谢你,我已经更新表明它是 vb.net 或 c#
标签: vb.net oop constructor abstract-class protected