声明的实例化和未实例化的引用变量之间的差异

时间:2016-02-28 04:18:24

标签: java variables

我想知道声明的实例化和未实例化的引用变量之间的区别是什么。

例如:

  1. 我有一个名为Rhino的班级 我通过声明变量Rhino,但我没有实例化它。
  2. 然后我通过声明它来创建Rhino的另一个变量,并实例化为null的值。
  3. 这两者有什么区别?

    我试图制作单链表。

1 个答案:

答案 0 :(得分:0)

以下是一个示例,您可以尝试自己找出答案:

package general;

public class BasicInstantiation {
private String name;

BasicInstantiation(String name){
    this.name = name;
}

public void setName(String name){
    this.name = name;
}

public String getName() {
    return name;
}

public static void main(String[] args) {
    try {
        BasicInstantiation bi = null;
        bi.setName("Romeo");
    }
    catch (NullPointerException ex){
        ex.printStackTrace();
    }

    try {
        BasicInstantiation bi1 = new BasicInstantiation("Romeo");
        bi1 = null;
        bi1.getName();          
    }
    catch (NullPointerException ex){
        ex.printStackTrace();
    }

}

}

输出:

java.lang.NullPointerException
at general.BasicInstantiation.main(BasicInstantiation.java:21)
java.lang.NullPointerException
at general.BasicInstantiation.main(BasicInstantiation.java:30)