Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/375.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java GUI编程_Java_Swing_Nullpointerexception_Scope - Fatal编程技术网

Java GUI编程

Java GUI编程,java,swing,nullpointerexception,scope,Java,Swing,Nullpointerexception,Scope,代码给出了nullpointer异常的错误…怎么办 import java.awt.event.*; import javax.swing.*; public class Gui implements ActionListener{ JButton button; public Gui(){ JFrame frame=new JFrame(); JButton button =new JButton("click me!"); button.addActionList

代码给出了nullpointer异常的错误…怎么办

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

public class Gui implements ActionListener{
JButton button;

public Gui(){
    JFrame frame=new JFrame();
    JButton button =new JButton("click me!");
    button.addActionListener(this);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.getContentPane().add(button);
    frame.setSize(270,300);
    frame.setVisible(true);
}
public static void main(String[] args){
    new Gui();
}

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

}

您的问题是按钮仅在构造函数内部可见

JButton button =new JButton
这将创建一个局部变量。 按钮字段仍然为空。

您在actionPerformed方法中引用的字段按钮从未初始化,因此为空

你有这个按钮JButton button=newjbuttonclick me!;您将其添加到主方法中,但您的actionPerformed从未意识到这一点

把这行改为


this.button=newjbuttonclick me

我认为在尝试GUI开发之前,您需要学习更多关于Java的知识。