谁能解释为什么

public class Testabut{
    enum ThreeColors{RED, BLUE, green;
        public void woowoo(){
        System.out.println("woo");}
    }
     ThreeColors color;



    class Innerclass{
        Innerclass(){
             color.woowoo();
        }
    }

在woowoo()调用时生成空指针异常?
颜色实例应该可以到达,不是吗?

最佳答案

因为color尚未初始化,并且其默认值为null
像这样初始化

ThreeColors color = ThreeColors.RED;  //Or any other value

10-05 18:50