我维护的一些代码使用了不熟悉的语法。我无法在 Java 文档中找到这种语法的示例。
public static void main(String[] args){
...
javax.swing.SwingUtilities.invokeLater(new MyClass.1());
...
}
和
public MyClass(a,m){
...
javax.swing.myJButton.addActionListener(new MyClass.5(this));
...
}
一季度。'.1' 和 '.5' 是什么意思?
Q2。'(this)' 有什么作用?它是 (this.param1, this.param2,...) 的简写吗?
Q3。这种语法是专门用于匿名对象实例化、javax.swing 组件、Runnables、多线程等,还是普遍使用?
第 4 季度。此代码的另一个版本使用更熟悉的语法。这些语句在语法上是否与上面的语句等效(尽管构造函数调用和事件行为不同)?
javax.swing.SwingUtilities.invokeLater(
new Runnable(){
public void run(){
new MyClass(a,m);
}
}
);
和
javax.swing.myJButton.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent e){
myJTextField.grabFocus();
}
}
);
SMILET
相关分类