好的,我的问题如下:假设您有一个像下面这样的课程。在运行时:
每次循环运行时都会创建一个新的动作监听器吗?
第二类比第一类效率高得多吗?
在第一堂课中是否创建了 100 个新的 ActionListener 对象?
public class Foo extends JFrame {
public Foo() {
for (int i = 0; i < 100; i++) {
JTextField someField = new JTextField();
someField.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
//DO SOMETHING HERE
}
});
}
}
}
与类似的类:
public class Foo extends JFrame {
public Foo() {
ActionListener someActionListener = new ActionListener(){
public void actionPerformed(ActionEvent e) {
//DO SOMETHING HERE
}
};
for (int i = 0; i < 100; i++) {
JTextField someField = new JTextField();
someField.addActionListener(someActionListener);
}
}
}