Каков наилучший способ реализации интерфейса java.awt.event.ActionListener?
Попросите свой класс реализовать ActionListener и добавьте его как ActionListener:
class Foo implements ActionListener{
    public Foo() {
        JButton button = new JButton();
        button.addActionListener(this);
    }
    public void actionPerformed(ActionEvent e) {
    }
}
Или добавить объект анонимного класса ActionListener:
class Foo{
    public Foo() {
        JButton button = new JButton();
        button.addActionListener(new ActionListener() {     
            public void actionPerformed(ActionEvent e) {
            }
        });
    }
}
