好的,我有一个类(我们称之为:MenuBarClass),它包含多个菜单和菜单项。 我希望为每个菜单项分配一个动作监听器,但是...与其像这样做:
menuitem_1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) {} });
menuitem_2.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) {} });
menuitem_3.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) {} });
// ...
menuitem_N.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) {} });
我希望我的代码更易于维护,更重要的是,我不希望在一个巨大的ActionListener类中有很多“if”语句:
public void actionPerformed(ActionEvent e) {
if (e.getSource().equals(menuitem_1)) {
//do stuff..
} else if (e.getSource().equals(menuitem_2)) {
//do stuff..
} else ...
}
如果可能的话,我该如何做到这一点?有人能帮忙吗?