哪种更好,为什么? 在我没有受过教育的意见中,最好将它们放在单独的文件中,因为如果您有10个按钮,5个组合框和一个或两个在一个文件中具有所有这些类的列表将变得杂乱无章。我是否正确地认为?为什么你会选择一个呢?把事件监听器放在哪里?
SimpleGUI.java:
public class simpleGUI extends JFrame {
public JButton button;
public JLabel label;
public simpleGUI() {
Container contentPane = getContentPane();
JPanel panel = new JPanel();
label = new JLabel("123abc");
button = new JButton("click me");
simpleEventListener c = new simpleEventListener();
c.setParams(label);
button.addActionListener(c);
panel.add(button);
panel.add(label);
contentPane.add(panel);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(300,300);
setTitle("simpleGUI");
setVisible(true);
}
public static void main(String[]args) {
JFrame frame = new simpleGUI();
}
}
simpleEventListener.java:
public class simpleEventListener implements ActionListener {
private JLabel label;
public void actionPerformed(ActionEvent e) {
label.setText("Hello World!");
}
public void setParams(JLabel label) {
this.label = label;
}
}
或:
public class simpleGUI extends JFrame {
public JButton button;
public JLabel label;
public simpleGUI() {
Container contentPane = getContentPane();
JPanel panel = new JPanel();
label = new JLabel("123abc");
button = new JButton("click me");
simpleEventListener c = new simpleEventListener();
button.addActionListener(c);
panel.add(button);
panel.add(label);
contentPane.add(panel);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(300,300);
setTitle("simpleGUI");
setVisible(true);
}
public class simpleEventListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
label.setText("Hello World!");
}
}
public static void main(String[]args) {
JFrame frame = new simpleGUI();
}
}