【发布时间】:2013-02-21 09:32:51
【问题描述】:
我有一个 VB.NET 项目,它有 2 个这样的类。一个 Base 和一个派生,包含在单独的项目 DLL 中。
Public Class BaseClass
Public Shared label_ As String
End Class
Public Class Derived
Inherits BaseClass
Shared Sub New()
BaseClass.label_ = "Some Label"
End Sub
Public Shared Sub Dump()
End Sub
End Class
为了测试我创建的这段代码
Sub Main()
'Shared label is Nothing here?
Console.WriteLine(Derived.label_)
'Shared label is assigned here as shared constructor is called
Derived.Dump()
Console.WriteLine(Derived.label_)
End Sub
我发现派生类中的共享构造函数只有在我调用实例方法或调用任何其他静态方法时才被调用?
我的理解是在应用运行的时候会调用Shared Constructor?
【问题讨论】:
标签: .net vb.net oop inheritance