我刚刚开始学习Swing基础知识并尝试复制一本教科书示例,但是当我尝试编译时遇到错误。
有三个班级。
FirstWindow类:
import javax.swing.JFrame;
import javax.swing.JButton;
public class FirstWindow extends JFrame {
public static final int WIDTH = 300;
public static final int HEIGHT = 200;
public FirstWindow() {
super();
setSize(WIDTH, HEIGHT);
setTitle("First Window Class");
setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
JButton endButton = new JButton("Click to end program.");
endButton.addActionListener(new EndingListener());
add(endButton);
}
}
EndingListener类:
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
public class EndingListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
}
DemoWindow类(使用main方法的类):
public class DemoWindow {
public static void main(String[] args) {
FirstWindow w = new FirstWindow();
w.setVisible(true);
}
}
当我尝试编译DemoWindow时,我得到:
DemoWindow.java:5: error cannot find symbol
FirstWindow w = new FirstWindow();
^
symbol: class FirstWindow
location: class DemoWindow
DemoWindow.java:5: error cannot find symbol
FirstWindow w = new FirstWindow();
^
symbol: class FirstWindow
location: class DemoWindow
2 errors
当我尝试专门编译FirstWindow时,我得到:
FirstWindow.java:18: error: cannot find symbol
endButton.addActionListener(new EndingListener());
^
symbol: class EndingListener
location: class FirstWindow
1 error
在寻找解决方案时,我看到的唯一一个问题就是一个不正确的导入语句(导入java.awt。*或类似的东西)。
有人可以帮我弄清楚到底出了什么问题吗?
编译问题已经解决。我必须批量编译所有类。
我的新问题是编译后,当我尝试运行DemoWindow时出现错误。
Error: Could not find or load main class DemoWindow
所有文件都在一个目录中。