【发布时间】:2011-10-25 16:45:55
【问题描述】:
问题很直接,在我的任何准备中都找不到答案。 在 VB.Net 中未实例化基类时,当实例化派生对象时,基类中的共享成员如何反应?共享构造函数是否在基层被调用?我试图弄清楚基类是否在基类中定义的shared new() 方法中初始化一组共享成员,实例化的衍生类是否可以访问,给定适当的访问器,如果基类没有被实例化?
Public Class Car
Protected Shared _carCount as Integer
Shared Sub New()
_carCount = 0
End Sub
Shared Public Function GetCount() as integer
return _carCount
End Sub
End Class
Public Class Sedan
Inherits Car
Shared Sub New()
_carCount = _carCount + 1
End Sub
End Sub
Sub Main()
Dim someSedan as New Sedan
System.Console.Writeline(someSedan.GetCount())
End Sub
这段代码没有经过检查,但它应该足以说明我在说什么。
【问题讨论】:
-
您需要提供更多详细信息。你在说什么语言?你是什么意思“共享”构造函数?
-
@x0n - 在 VB.NET 中,
shared就是您在 C# 中所称的static。 -
另外,如何在不实例化基类的情况下实例化派生类?你能举个例子吗?
-
@hydroparadise,AFAIK 你做不到。那么你能提供一些你在做什么的代码吗?
标签: .net inheritance shared static-members