The AWT provides a number of adapter classes for the
different EventListener interfaces. These are:
ComponentAdapterContainerAdapterFocusAdapterKeyAdapterMouseAdapterMouseMotionAdapterWindowAdapter
Each adapter class implements the corresponding interface with a
series of do-nothing methods. For example, MouseListener
declares
these five methods:
public abstract void mouseClicked(MouseEvent evt)
public abstract void mousePressed(MouseEvent evt)
public abstract void mouseReleased(MouseEvent evt)
public abstract void mouseEntered(MouseEvent evt)
public abstract void mouseExited(MouseEvent evt)
Therefore, MouseAdapter looks like this:
package java.awt.event;
import java.awt.*;
import java.awt.event.*;
public class MouseAdapter implements MouseListener {
public void mouseClicked(MouseEvent evt) {}
public void mousePressed(MouseEvent evt) {}
public void mouseReleased(MouseEvent evt) {}
public void mouseEntered(MouseEvent evt) {}
public void mouseExited(MouseEvent evt) {}
}
By subclassing MouseAdapter rather than implementing
MouseListener directly, you avoid having to write
the methods you don't actually need. You only override those that
you plan to actually implement.