Java Action Listener: Implementiert vs anonyme Klasse

Ich versuche mir Java beizubringen und hatte eine Frage, die ich bisher nicht beantworten konnte. In einigen meiner Online-Lektüren habe ich zwei Möglichkeiten für die Verwendung des Aktionslisteners gefunden, die anscheinend dasselbe bewirken. Aber ich versuche herauszufinden, was der Vorteil / Nachteil des einen gegenüber dem anderen ist.

Ist es besser, eine anonyme Klasse wie diese zu verwenden:

public MyClass() {
...
    myButton.addActionListener(new ActionListener(){
        public void actionPerformed(ActionEvent e) {
            //doSomething
        }
    });
...
}

oder ist es am besten zu Beginn der Klasse so zu implementieren:

public MyClass() implements ActionListener {
...
    myButton.addActionListener(this);

    public void actionPerformed(ActionEvent e) {
        //doSomething
    }
...
}

Antworten auf die Frage(3)

Ihre Antwort auf die Frage