¿Hay una mejor práctica para los oyentes?

Digamos que tengo una interfaz gráfica de usuario swing, y quiero escucharMouseEvents. ¿Quién crees que debería ser la clase de oyentes, quién debería ser responsable? ¿Cuál es la mejor o la mejor forma de implementarlo? ¿Alguna opinión? Por lo general voy así:

public class MyPanel extends JPanel implements MouseListener{
    private JTable table;
    public void foo(){
         table.addMouseListener(this);
    }
    /* MouseListener */
    //Implement MouseListener here.
}

¿Hay alguna manera mejor?

EDITAR: Gracias a todos por la sabiduría y ayuda. Lo aprecio.

Respuestas a la pregunta(5)

Su respuesta a la pregunta