Java-无法理解错误消息

Java-无法理解错误消息,java,Java,我是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上得到一条错误消息

我是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)”


我不太明白这个错误消息的意思,在本教程中没有提到。

您需要覆盖actionPerformed方法

您的类Proj实现了一个接口。接口可以“告诉”实现该接口的类必须实现哪些方法。
ActionListener
接口保证实现此接口的类也必须实现所述方法
actionPerformed(…)
。所以为了解决这个问题:实现上述方法


无意冒犯,但是:您可能想看看一些Java初学者教程或书籍

ActionListener
是一个包含方法
actionPerformed(ActionEvent e)
。实现接口时,您同意创建在所述接口中声明的所有方法的实现

您没有实现接口中的
actionPerformed(ActionEvent e)
方法,您告诉Java编译器您将要实现该方法,因此出现了错误。您还必须确保对方法使用与界面中相同的修饰符,在本例中是
public void


我怀疑您正在学习的教程会达到这个目的,您可能只是试图过早地编译程序。如果没有,我会给教程的所有者发一封电子邮件

如果一个类实现了一个接口,它应该实现该接口中的所有方法,除非它是一个抽象类


ActionListener
是Java中的一个接口,您的类Proj不是一个抽象类,因此您必须实现在该接口中适当定义的
actionPerformed(ActionEvent e)
方法。

ActionListener是一个接口。接口声明方法,但不包括其主体。当您实现一个接口时,您应该为继承的方法提供一个主体,或者将其声明为抽象的(说:嘿!我的子类应该实现它)。

只需为ActionListner接口添加缺少的方法。

不会覆盖抽象方法actionPerformed,我想现在,您应该只关注这一部分如果这只是第一步,可能还没有必要编译它。在某些时候,您需要编写一个
actionPerformed
方法;这是因为该类实现了ActionListener。缺少的方法在ActionListener接口中声明。如果它至少没有触及异常或正确解释异常,我建议它不是一个很好的教程。请始终记住,当您执行
实现
时,您必须覆盖接口中的所有方法(尽管Java 8中存在异常),这是学习Java时应该学习的最基本的内容:)“你可能想看看一些Java入门教程或书籍。”他明确地说,他在学习教程时遇到了这个错误。然后我应该纠正这一点:一个更好的教程(至少如果教程假设代码可以编译的话)不是很好。该类需要声明为抽象类。如果我错了,请纠正我,但我认为它继承了方法的抽象性。是的,您是正确的。只需要抽象类。我刚查过。对不起,我弄错了。