我在 VB.NET 和 C# (.NET2) 中遇到了静态/共享成员可见性的情况。在我看来,在 VB.NET 中有点奇怪:
public class A
{
private static A instance;
public static A Instance
{
get { return instance; }
}
public string Name { get { } }
}
用法:
A.Instance.Name
//只有名称是“可见的”
VB.NET:
Public Class A
Private Shared _instance As A
Public Shared ReadOnly Property Instance() As A
Get
Return _instance
End Get
End Property
Public ReadOnly Property Name() As String
Get
Return ""
End Get
End Property
End Class
用法:
A.Instance.Instance.Instance.Instance...
// 共享成员的行为就像一个公共类我可以重复它到无限..
这是 Microsoft 的疏忽还是 VB.NET 的“功能”?