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.
