今天在eclipse 3.8平臺上卡住了java錯誤。java null指針異常JMenuBar
我嘗試在JFrame上生成一個簡單的MenuBar。 JMenuBar包含JMenu(「幫助」),JMenu包含JMenuItem(「退出」)。該類擴展了JFrame。使用函數(this。)setJMenuBar(MenuBar);我嘗試將我的MenuBar設置爲我的JFrame,只要我只有一個MenuBar,它應該可以正常工作。
GUI類代碼:
import javax.swing.*;
import java.awt.*;
public class Taschenrechner extends JFrame{
//Instanzvariablen im Zusamenhang mit dem Menu
private JMenuBar MenuBar;
private JMenu MenuHelp;
private JMenuItem MenuHelpQuit;
public Taschenrechner() {
super();
//Flaeche festlegen
this.setSize(300,300);
//Menukomponenten definieren
MenuHelp= new JMenu("Help");
MenuHelpQuit=new JMenuItem("Quit");
//Menukomponenten zusammensetzen
MenuHelp.add(MenuHelpQuit);
MenuBar.add(MenuHelp);
this.setJMenuBar(MenuBar);
}
}
我的主類代碼(聲明OBJEKT和調用setVisible):
public class Taschenrechnerstart {
public static void main(String[] args) {
Taschenrechner taschenrechner1 = new Taschenrechner();
taschenrechner1.setVisible(true);
}
}
現在開始上的代碼,我得到一個NullPointerException錯誤的GUI的class on line:
MenuBar.add(MenuHelp);
and the main-class on the line上的NullPointerException-錯誤:
Taschenrechner taschenrechner1 = new Taschenrechner();
有人有一個想法,爲什麼我的代碼不工作?
你沒有初始化'MenuBar',默認情況下它被設置爲'null',所以你的代碼實際上是'null.add(MenuHelp);'。 – Maroun