I am currently replacing my anonymous ActionListeners
new ActionListener() {
@Override
public void actionPerformed(final ActionEvent event) {
You can keep your actions in a separate package to isolate them. Sometimes, it is useful to keep them in one class, especially if actions are related or have a common parent, for example:
public class SomeActions {
static class SomeActionX extends AbstractAction {
@Override
public void actionPerformed(ActionEvent e) {
}
}
static class SomeActionY extends AbstractAction {
@Override
public void actionPerformed(ActionEvent e) {
}
}
static class SomeActionZ extends AbstractAction {
@Override
public void actionPerformed(ActionEvent e) {
}
}
}
Then to access them:
JButton button = new JButton();
button.setAction(new SomeActions.SomeActionX());