为什么给出Null指针异常的类的静态引用

时间:2014-02-18 07:56:06

标签: java oop

这里我有两节课。当我尝试使用静态引用访问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时会出现问题。

2 个答案:

答案 0 :(得分:0)

static A ref;

这与static关键字无关。您尚未初始化A,对象的默认值为null,因此您实际上是在撰写:

ref.getA();

答案 1 :(得分:0)

因为您尚未实例化对象ref

你需要做

A ref = new A ();