さて、私の質問は次のとおりです。次のようなクラスがあるとします。実行時:
ループが実行されるたびに新しいアクションリスナーが作成されますか?
2番目のクラスは最初のクラスよりもはるかに効率的ですか?
最初のクラスでは、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);
}
}
}