【发布时间】:2014-02-18 07:56:06
【问题描述】:
这里我有两节课。当我尝试使用静态引用访问 A 类的方法时,它给出了 Null 指针异常。为什么会这样??
A.Java
public class A{
int a;
public void getA(){
a=11;
System.out.println("a"+a);
}
}
C.java
public class C{
static A ref;
public static void main(String args[]){
ref.getA();
}
}
问题出现在我执行 C 时。
【问题讨论】:
-
你永远不会为 A 创建实例
-
您应该阅读有关如何使用“静态”的更多信息。简单地说“静态 A ref”并不意味着您可以以静态方式访问 A。
-
static这里的意思是,你可以在没有C实例的情况下到达ref(即你可以写C.ref而不是new C().ref。这并不意味着ref自动引用A的一个实例。