java - "Illegal Start of action"和 "; expected"编译器错误

标签 java

我在一行代码中遇到了 4 个错误

“public action void actionPerformed(ActionEvent event){”行获得“Illegal start of action”两次和“;预期”两次。

我从 Head First Java 书中复制了这段代码,为什么它不能编译?

import javax.swing.*;
import java.awt.event.*;

public class SimpleGui1 implements ActionListener{
    Jbutton button;

    public static void main (String [] args) {
        SimpleGui1 gui = new SimpleGui1();
        gui.go();
    }

    public void go(){
        JFrame frame = new JFrame();
        button = new JButton("Click");

        button.addActionListener(this);

        frame.getContentPane().add(button);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setSize(300, 300);
        frame.setVisible(true);


        public void actionPerformed(ActionEvent event){
            button.setText("I've been clicked.");
        } //close actionPerformed
    } //close go()

}

最佳答案

您不能在另一个方法中定义一个方法。将 actionPerformed 移到 go block

之外
 public void go(){
        JFrame frame = new JFrame();
        button = new JButton("Click");

        button.addActionListener(this);

        frame.getContentPane().add(button);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setSize(300, 300);
        frame.setVisible(true);


} //close go()



public void actionPerformed(ActionEvent event){
            button.setText("I've been clicked.");
} //close actionPerformed

关于java - "Illegal Start of action"和 "; expected"编译器错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18433726/

相关文章:

java - 无法在简单的 javafx 应用程序中显示文本

java - Postgres如何获取海量数据

java - Tomcat 上的 Websockets : how to shutdown the server cleanly?

java - 在java中读取XML标签

java - 在下面提到的场景中如何将列表传递给sql查询

java - 将 session 与 DynamoDB 结合使用

java - 如果我的类(class)已经在扩展另一个类(class),如何使用 unicastremoteobject ...?

Java DOM 如何检查节点是否存在于 XML 中

java - Android - 带有 ArrayAdapter 和隐藏 TextView 的 ListView

java - 使用 get 方法初始化在不同类中声明的 JButton 多维数组