作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我认为我已经很好地掌握了 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/
我是一名优秀的程序员,十分优秀!