Java 为什么可以';我生蛋了';通过调用Yolk';什么是塞特法?

Java 为什么可以';我生蛋了';通过调用Yolk';什么是塞特法?,java,Java,我刚接触Java大约一周,遇到了一个小问题。 我有一个内部类Yolk,我试图通过调用Yolk的setI方法来设置实例变量I public class Egg { private int i; Yolk y; class Yolk { public void setI(int value){ i = value; } } public static void main(String[] args){

我刚接触Java大约一周,遇到了一个小问题。 我有一个内部类Yolk,我试图通过调用Yolk的setI方法来设置实例变量I

public class Egg {
    private int i;
    Yolk y;

    class Yolk {
        public  void setI(int value){
        i = value;
        }
    }

    public static void main(String[] args){
        Egg e = new Egg();
        e.y.setI(5);
        System.out.println("i= "+ e.i);
}

当我运行我的程序时,我得到了NullPointerException,我似乎不知道为什么。

蛋黄y还没有被实例化

Yolk y = new Yolk();

蛋黄y还没有被实例化

Yolk y = new Yolk();

你的蛋还没有蛋黄,只有它应该在的地方。啊!他是在忽视事情!再次感谢各位!你的蛋还没有蛋黄,只有它应该在的地方。啊!他是在忽视事情!再次感谢各位!非常感谢。太简单了,从我头上飞过。谢谢!太简单了,从我头上飞过。