gpt4 book ai didi

java - ActionListener 中预期的标识符

转载 作者:行者123 更新时间:2023-12-02 05:49:18 26 4
gpt4 key购买 nike

我编译了我的代码并收到错误:

C:\Users\RJ\Desktop>javac  windowTest.java
windowTest.java:17: error: <identifier> expected
click.addActionListener(new ActionListener(){
^
windowTest.java:22: error: ';' expected
});
^
2 errors

我对 java 仍然很陌生,希望有示例和/或逐步帮助解释。如果我移动覆盖,我会收到一条错误消息,指出我没有覆盖。我的代码是:

import java.awt.*;
import java.awt.event.*;
import javax.swing.JFrame;
import javax.swing.*;
import java.util.Scanner;


public class windowTest extends JFrame implements ActionListener{
public static void main(String args[]){
JFrame frame = new JFrame();
JLabel label = new JLabel("This is a test.");
JButton click = new JButton("Test");
JPanel buttonPan = new JPanel();
JPanel textPan = new JPanel();
final JTextField textIn = new JTextField();
@Override
click.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
String text = textIn.getText();
System.out.println(text);
}
});
buttonPan.setSize(100, 100);
textIn.setPreferredSize(new Dimension(700, 48));
textPan.add(textIn);
buttonPan.add(click);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(800, 700);
frame.setLocationRelativeTo(null);
frame.setLayout(new BorderLayout());
label.setHorizontalAlignment(JLabel.CENTER);
label.setVerticalAlignment(JLabel.CENTER);
frame.add(label, BorderLayout.NORTH);
frame.add(buttonPan, BorderLayout.SOUTH);
frame.add(textPan, BorderLayout.CENTER);
frame.setVisible(true);
frame.setTitle("Window Test");
}
}

最佳答案

第一个问题,您需要将 @Override 向下移动,因为这是一个应用于匿名类内部方法定义的注释。

click.addActionListener(new ActionListener(){      
@Override
public void actionPerformed(ActionEvent e){
String text = textIn.getText();
System.out.println(text);
}
});

第二个问题,您的 windowTest声明它 实现了 ActionListener 但没有实现 actionPerformed。由于您似乎不需要它,因此您可以在声明中删除它。

public class windowTest extends JFrame{
...
}

通过这两项更改,您的应用程序将编译并运行。

关于java - ActionListener 中预期的标识符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23717382/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com