我正在尝试开发一个小比萨饼订购应用程序。到目前为止我有3个班级,他们现在的目的是显示3个菜单,菜单项可访问。
以前我只有一个类,但是工作得很好但是当我将程序拆分为使用多个类时,问题就开始发生了。
Main.java: http://pastebin.com/bZJ7Pgdt
MakeFileMenu.java: http://pastebin.com/wv2Smm6E
MakeFrame.java: http://pastebin.com/J7DV294P
我得到的错误是:
Exception in thread "main" java.lang.NullPointerException
at main.MakeFileMenu.MakeMenu(MakeFileMenu.java:24)
at main.Main.start(Main.java:26)
at main.Main.main(Main.java:16)
此外,在Makeframe.java文件中,应取消注释37,42,49和57。我评论了他们,因为他们给了我错误所以我想我至少会尝试让菜单出现。
你们看到的一切与众不同吗?我仔细检查了一下我似乎无法弄清楚它可能出错的代码。
感谢您的帮助!
答案 0 :(得分:1)
问题在于:
frame.frame.setJMenuBar(menuBar);
这是因为frame
(frame
)中的变量frame.frame
未初始化。你必须在使用之前初始化它。
您要么忘记在MakeFileMenu中调用makeFrame,要么将makeFrame重命名为MakeFrame以使其成为构造函数。