【发布时间】:2013-01-22 16:20:18
【问题描述】:
Nothing 在New 之后,有可能吗?
Dim myObj As MyClass = Nothing
myObj = New MyClass(params)
If myObj Is Nothig Then
' is it possible?
End If
构造函数返回空(无)对象是否存在理论上的可能性?
说,在构造函数中设置Me = Nothing?或者,如果在构造函数中抛出异常,对象的 catch 中会发生什么?
或者在最后一个构造函数行中,我通过引用“Me”传递给一个方法,而这个方法将该引用设置为 Nothing?
【问题讨论】:
-
我认为 MyClass 构造函数将抛出异常(如果不处理将停止执行),或者构造函数将返回并将 MyClass 的新实例分配给 myObj。跨度>
-
不,我认为
new永远不会返回null/nothing -
@KenPespisa:即使不太可能,VB.NET 的行为也可能与 C# 不同,因此我不会将其称为重复项(请注意,即使
Nothing和null也是相当不同)。