第一二行 总是被告知:缺少class或interface 
环境变量没注册错。
package javaclass;
import javax.swing.*;
public class InfoJMenu
{
private JFrame mainFrame=null;
private JMenuBar myMenuBar=null;
private JMenu fileMenu=null;
private JMenuItem file_Connect,file_ToFile,file_FromFile,file_Exit;
private JMenu opMenu=null;
private JMenuItem op_Insert,op_Delete,op_Update;
private JMenu queryMenu=null;
private JMenuItem query_Grid,query_Card;
private JMenu helpMenu=null;
private JMenuItem help_About;

public InfoJMenu(JFrame mainFrame)
{
this.mainFrame=mainFrame;
init();
}

private void init()
{
myMenuBar=new JMenuBar();
mainFrame.setJMenuBar(myMenuBar);
AddMenu();
mainFrame.setVisible(true);

}
private void AddMenu()
{
fileMenu=new JMenu("文件");
myMenuBar.add(fileMenu);
fileMenu.add(file_Connect= new JMenuItem("连接"));
fileMenu.addSeparator();
fileMenu.add(file_ToFile= new JMenuItem("导入数据"));
fileMenu.add(file_FromFile=new JMenuItem("导出数据"));
fileMenu.addSeparator();
fileMenu.add(file_Exit=new JMenuItem("Exit"));
opMenu=new JMenu("数据操作");
myMenuBar.add(opMenu);
opMenu.add(op_Insert=new JMenuItem("添加"));
opMenu.add(op_Delete=new JMenuItem("删除"));
opMenu.add(op_Update=new JMenuItem("修改"));
queryMenu=new JMenu("数据查询");
myMenuBar.add(queryMenu);
queryMenu.add(query_Grid=new JMenuItem("表格"));
queryMenu.add(query_Card=new JMenuItem("卡片"));
helpMenu=new JMenu("帮助");
myMenuBar.add(helpMenu);
helpMenu.add(help_About=new JMenuItem("关于系统"));


}
}

解决方案 »

  1.   

    你用了init()写的是Applet,当然要导入包了
    import java.applet.*
      

  2.   

    喔,看错了,不是Applet,没有错
      

  3.   

    public static void main(String[] args)
    {
     InfoJMenu a=new InfoJMenu(new JFrame()); 
    }
    你再测试一下,加上main,完全可以运行
      

  4.   

    lz你怎么程序没有主函数啊
    +上
    public static void main(String[] args){
        new InfoJMenu();
    }
    试试
      

  5.   

    jdk1.4可以编译通过,鉴定完毕
      

  6.   

    我用的是jdk 1.5。
    不加main方法按理说也是应该可也编译的呀,可是我编译后还是提示我:需要“class”或“interface”
      

  7.   

    程序没问题
    编译好的class文件要放到package javaclass里面
    你放了吗
      

  8.   

    JDK1.5
    Jcreator 通过。
    估计楼主的CLASSPATH有问题吧!
      

  9.   

    其实我这个程序总共3个文件,怕太长开始只贴了一个文件,现在把所有的都贴上。
    按理说运行应该是一个主窗口有菜单栏和菜单项。
    第一个文件是可以编译的。但第二个就会出现需要class或interface 。如果把三个文件放到同一个文件中去掉后两个类的public可以通过编译,但运行时会提示找不到main方法。
    我用的jcreator jdk1.5 环境变量设置正确以前用swt编过类似的程序。
    麻烦各位在帮忙看看。
    InfoJMenu文件package javaclass;
    import javax.swing.*;
    public class InfoJMenu
    {
    private JFrame mainFrame=null;
    private JMenuBar myMenuBar=null;
    private JMenu fileMenu=null;
    private JMenuItem file_Connect,file_ToFile,file_FromFile,file_Exit;
    private JMenu opMenu=null;
    private JMenuItem op_Insert,op_Delete,op_Update;
    private JMenu queryMenu=null;
    private JMenuItem query_Grid,query_Card;
    private JMenu helpMenu=null;
    private JMenuItem help_About;public InfoJMenu(JFrame mainFrame)
    {
    this.mainFrame=mainFrame;
    init();
    }private void init()
    {
    myMenuBar=new JMenuBar();
    mainFrame.setJMenuBar(myMenuBar);
    AddMenu();
    mainFrame.setVisible(true);}
    private void AddMenu()
    {
    fileMenu=new JMenu("文件");
    myMenuBar.add(fileMenu);
    fileMenu.add(file_Connect= new JMenuItem("连接"));
    fileMenu.addSeparator();
    fileMenu.add(file_ToFile= new JMenuItem("导入数据"));
    fileMenu.add(file_FromFile=new JMenuItem("导出数据"));
    fileMenu.addSeparator();
    fileMenu.add(file_Exit=new JMenuItem("Exit"));
    opMenu=new JMenu("数据操作");
    myMenuBar.add(opMenu);
    opMenu.add(op_Insert=new JMenuItem("添加"));
    opMenu.add(op_Delete=new JMenuItem("删除"));
    opMenu.add(op_Update=new JMenuItem("修改"));
    queryMenu=new JMenu("数据查询");
    myMenuBar.add(queryMenu);
    queryMenu.add(query_Grid=new JMenuItem("表格"));
    queryMenu.add(query_Card=new JMenuItem("卡片"));
    helpMenu=new JMenu("帮助");
    myMenuBar.add(helpMenu);
    helpMenu.add(help_About=new JMenuItem("关于系统"));
    }
    }================
    InfoJFrame文件
    package javaclass;
    import javax.swing.*;public class InfoJFrame
    {
    private JFrame mainFrame;

    public InfoJFrame()
    {
    CreateMainWindow();
    InfoJMenu myMenu=new InfoJMenu(mainFrame);
    }
    private void CreateMainWindow()
    {
    mainFrame=new JFrame(" ");
    mainFrame.setSize(400,300);
    mainFrame.setLocation(100,100);
    mainFrame.setVisible(true);
    mainFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
    }
    ===============
    InfoWindowDemo文件
    package javaclass;
    import javaclass.*;
    public class InfoWindowDemo
    {
    public static void main()
    {
           InfoJFrame myframe=new InfoJFrame();
    }
    }