Java 使用actionPerformed和actionListener获取错误
抱歉,如果这是重复的,但我找不到任何有效的。我做了一个测试类,所以我可以举个例子Java 使用actionPerformed和actionListener获取错误,java,action,actionlistener,Java,Action,Actionlistener,抱歉,如果这是重复的,但我找不到任何有效的。我做了一个测试类,所以我可以举个例子 public class Action implements ActionListener { public static void main(String[] args) { ... JButton b1 = new JButton("action"); b1.setVisible(true); b1.setSize(100,30); //Cannot instantiate
public class Action implements ActionListener {
public static void main(String[] args) {
...
JButton b1 = new JButton("action");
b1.setVisible(true);
b1.setSize(100,30); //Cannot instantiate the type
b1.addActionListener(new ActionListener());
@Override
public void actionPerformed(ActionEvent e) {
//I get an error when I put "}" to close the brackets
}
}
如果只将ActionListener用于JButton,则不需要实现它,但需要在addActionListener方法中实例化ActionListener 这是我的看法
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
public class Action {
public static void main(String[] args) {
JButton b1 = new JButton("action");
b1.setVisible(true);
b1.setSize(100,30); //Cannot instantiate the type
b1.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e) {
//Some action.
}
});
}
}
非常感谢你!这就解决了一个问题:对特定对象使用导入是否更好?示例:import javax.swing.JButton;,和javax.swing.JFrame;,等等,而不是:import javax.swing.*;?再次感谢!如果您只使用了几个导入,那么应该只使用这些导入,但是如果它开始变得混乱,那么使用multiple import语句是值得的。