gpt4 book ai didi

java - 这个关键词指的是什么?

转载 作者:行者123 更新时间:2023-12-01 07:08:42 25 4
gpt4 key购买 nike

我认为我已经很好地掌握了 this 关键字。有些事情让我有点困惑。

我有一个方法可以将 ActionListener 添加到我的按钮。该方法如下所示

public void checkButtonState(){

button1.addActionListener(new ActionListener(){



@Override
public void actionPerformed(ActionEvent arg0) {

}

});


}

我的类中还有一个构造函数方法..看起来像这样

public CanvasA(){
try{
CanvasABackground = ImageIO.read(new File("C:\\Users\\user\\workspace\\Interface\\src\\01120156745.jpg"));

}catch(IOException ex){

}


setSize(450,490);
setLayout(null);
JLabel picLabel = new JLabel(new ImageIcon(CanvasABackground));
add(picLabel);
createEnterButton();
createCloseButton();
checkButtonState();
checkButtonState2();
}

当在构造函数中使用 this 关键字时,我会弹出许多不同的方法。例如,输入 this. 将生成许多名为 add 的方法以及许多其他方法。但是,在

内输入 this.
@Override
public void actionPerformed(ActionEvent arg0) {

}

方法,生成完全不同的方法..基本上 this 关键字指的是其他东西。在第一种情况下,它谈论的是我的 CanvasA 类(顺便说一句,它扩展了 JPanel)。我很好奇在 actionPerformed 方法中输入时 this 引用了什么。

感谢您的帮助。

最佳答案

哪里

 new ActionListener(){



@Override
public void actionPerformed(ActionEvent arg0) {
//here this referes to ActionListener
}

});

是一个新的匿名内部类,其中this引用ActionListener的当前实例

关于java - 这个关键词指的是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18251116/

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