一个JAVA小程序,帮忙看下
import java.awt.*;
public class Drawing extends Frame{
Drawing(String title){
setTitle(title);
setVisible(true);
setSize(400,400);
setResizable(false);
setMenuBar(new MenuUp());
}
public static void main(String args[]){
Drawing d=new Drawing("Encoding Tools");
}
public class MenuUP extends MenuBar{
public void MenuUp(){
Menu m1=new Menu("File");
Menu m2=new Menu("Help");
MenuItem mi1=new MenuItem("Open...");
MenuItem mi2=new MenuItem("Generate Random Keys~");
MenuItem mi3=new MenuItem("Exit"); //create three menuitems of menu1-file
m1.add(mi1);
m1.add(mi2);
m1.addSeparator();
m1.add(mi3); // add three menuitems to menu1.
add(m1);
add(m2);
setHelpMenu(m2);
}
}
}
编译不通过提示:E:\javaprogrammes\Drawing.java:10: cannot find symbol
symbol : class MenuUp
location: class Drawing
setMenuBar(new MenuUp());我已经把类MenuUp设置成内部类了,为什么还会出现错误啊?请高手帮忙指正一下哈,我是刚JAVA的
参考答案:一楼:内部类可以使用public
二楼:外部类当然可以引用内部类的方法、属性
三楼:在语言级别你的代码和楼主的没有区别
四楼:一个文件里的确不能有两个public类,但这里是一个内部类,所以没有限制
原因:应该是setMenuBar(new MenuUP());(大小写错)