我是Java的新手,我已经开始使用教程......教程希望你这样开始:
package proj;
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
public class Proj extends JFrame implements ActionListener {
public static void main(String[] args) {
}
}
但是我在类Proj上收到一条错误消息,就是说:“Proj不是抽象的,并且不会在ActionListener中覆盖抽象方法actionPerformed(ActionEvent)”。
我不太明白这个错误消息的含义,并且在教程中没有提及。
答案 0 :(得分:3)
你的类Proj实现了一个接口。界面可以告诉"实现此接口的类必须实现哪些方法。 ActionListener
接口保证实现此接口的类也必须实现所述方法actionPerformed(...)
。所以为了解决这个问题:实施上述方法。
没有冒犯,但是:您可能想要查看一些Java入门教程或书籍。
答案 1 :(得分:3)
ActionListener
是Interface,其中包含方法actionPerformed(ActionEvent e)
。实现接口时,您同意创建在所述接口中声明的所有方法的实现。
您还没有实现您告诉Java编译器实现的接口中的actionPerformed(ActionEvent e)
方法,因此错误。您还必须确保为方法使用与界面相同的修饰符,在本例中为public void
。
我怀疑你所遵循的教程将会达到这个目的,你可能只是试图过早地编译程序。如果没有,我会发送电子邮件给教程的所有者!
答案 2 :(得分:1)
如果一个类实现了一个接口,它应该实现该接口中的所有方法,除非它是一个抽象类
ActionListener
是Java中的接口,您的类Proj不是抽象类,因此您必须实现在该接口中正确定义的actionPerformed(ActionEvent e)
方法。
答案 3 :(得分:0)
您需要覆盖actionPerformed方法。
答案 4 :(得分:0)
ActionListener是一个接口。接口声明方法,但不包括其主体。当你实现一个接口时,你应该为继承的方法提供一个体,或者将它声明为abstract(说:嘿!我的子类应该实现它)。
答案 5 :(得分:0)
只需为ActionListener接口添加缺少的方法。