c# – 为什么不能通过实例名称访问静态成员?
发布时间:2020-12-15 18:35:16 所属栏目:百科 来源:网络整理
导读:说我有: class Test { public static int Hello = 5; } 这显然有效: int j = Test.Hello; 但为什么这不起作用? Test test = new Test(); int j = test.Hello; 该实例不能有一个同名的成员,所以我不知道这对编译器来说是多么模糊或不可解析. 任何人都知道
说我有:
class Test { public static int Hello = 5; } 这显然有效: int j = Test.Hello; 但为什么这不起作用? Test test = new Test(); int j = test.Hello; 该实例不能有一个同名的成员,所以我不知道这对编译器来说是多么模糊或不可解析. 任何人都知道为什么会这样? 编辑: 解决方法
另一个角度:
假设这是可能的.当你通过一个null的实例变量访问静态成员时,你会想要的结果是什么?您想要一个空引用异常(但为什么,因为不需要实例来获取静态成员)?或者你希望它能工作(在这种情况下你会遇到奇怪的情况,这个实例变量的一些调用工作,但有些没有)?无论哪种方式都有问题. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |