这里我有两节课。当我尝试使用静态引用访问A类的方法时,它给出空指针异常。为什么会发生这种情况?
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时会出现问题。
答案 0 :(得分:0)
static A ref;
这与static
关键字无关。您尚未初始化A
,对象的默认值为null
,因此您实际上是在撰写:
ref.getA();
答案 1 :(得分:0)
因为您尚未实例化对象ref
你需要做
A ref = new A ();