gpt4 book ai didi

java - 如何用有效的内容替换 Java 中的 "this"

转载 作者:行者123 更新时间:2023-12-01 16:40:09 27 4
gpt4 key购买 nike

我正在寻找 showGUI() 方法的工作,编译器说“this”不是静态变量,不能从静态上下文中引用,我会用什么来替换“this”?我尝试过 test.main (测试是它所在的包)。我使用静态方法 showGUI() 的原因是因为我需要从另一个静态方法以及startup() 方法调用该方法。以下是我的两个主要类(class)。

public class Main extends SingleFrameApplication {

@Override protected void startup() {
showGUI();
}

@Override protected void configureWindow(java.awt.Window root) {
}

public static Main getApplication() {
return Application.getInstance(Main.class);
}

public static void main(String[] args) {
launch(Main.class, args);

}

public static void showGUI() {
show(new GUI(this));
}
}

public class GUI extends FrameView {

public GUI(SingleFrameApplication app) {
super(app);
initComponents();
}
private void initComponents() {
//all the GUI stuff is somehow defined here
}
}

最佳答案

嗯,在静态方法中使用 this 没有意义。 this 指的是该类的特定实例,但 static 意味着这是一个不需要实例的方法,因此无法访问任何成员变量或方法。

只需将 showGUI 设置为非静态即可。

public void showGUI() {
show(new GUI(this));
}

关于java - 如何用有效的内容替换 Java 中的 "this",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4609978/

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