Java图形用户界面

代码编译成功但是运行不了,运行报错
错误:

Exception in thread "main" java.lang.NullPointerException
    at java.awt.Container.addImpl(Container.java:1095)
    at java.awt.Container.add(Container.java:419)
    at javax.swing.JPopupMenu.add(JPopupMenu.java:291)
    at javax.swing.JMenu.add(JMenu.java:574)
    at Demo_6.Demo6__6.Display(Demo6_6.java:28)
    at Demo_6.Demo6_6.main(Demo6_6.java:39)

代码:

import javax.swing.*;

class Demo6__6 extends JFrame {

    JMenuBar jMenuBar = new JMenuBar();
    JMenu jMenu1 = new JMenu("color");
    JMenu jMenu2 = new JMenu("exit");
    JMenuItem jMenuItem1,jMenuItem2,jMenuItem3;





    void  Display(){
        jMenuItem1 = new JMenuItem("green");
        jMenuItem1 = new JMenuItem("yellow");
        jMenuItem1 = new JMenuItem("blue");
        this.setJMenuBar(jMenuBar);
        jMenuBar.add(jMenu1);
        jMenuBar.add(jMenu2);



        jMenu1.add(jMenuItem1);
        jMenu1.add(jMenuItem2);
        jMenu1.add(jMenuItem3);
        this.setTitle("MyMune");
        this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
        this.setSize(300,300);
        this.setVisible(true);
    }
}
public class Demo6_6 {
    public static void main(String[] args) {
        Demo6__6 exa = new Demo6__6();
        exa.Display();
    }
}

你的jMenuItem2和jMenuItem3没有初始化,所以添加的时候报错了。我猜应该是你上面这里写错了

        jMenuItem1 = new JMenuItem("green");
        jMenuItem1 = new JMenuItem("yellow");
        jMenuItem1 = new JMenuItem("blue");

改成

        jMenuItem1 = new JMenuItem("green");
        jMenuItem2 = new JMenuItem("yellow");
        jMenuItem3 = new JMenuItem("blue");