為了進行事件處理,需要創(chuàng)建實現(xiàn)Listener接121的類,而在某些Listener接口中,聲明了很多抽象方法,為了實現(xiàn)這些接口,需要做很多工作,一一實現(xiàn)這些方法。例如在MouseListener接口中,聲明了下述抽象方法:
mouseClicked(MouseEvent)
mousePressed(MouseEvent)
mouseReleased(MouseEvent)
mouseEntered(MouseEvent)
mouseExited(MouseEvent)
在實現(xiàn)MouseI。istener接口的類中,必須同時實現(xiàn)這五個方法。
由于在某些情況下,實際關心的只是接口中的個別方法,因此為了編程方便,Java為那些聲明了多個方法的Listener接口提供了一個對應的適配器(Adapter)類。
在適配器類中實現(xiàn)了相應接1:3中的全部方法,只是方法的內容為空。例如MouseListener接口的形式如下:
public interface MouseListener extends EventListener {
public void mouseClicked(MouseEvent e);
public void mousePressed(MouseEvent e);
public void mouseReleased(MouseEvent e);
public void mouseEntered(MouseEvent e);
public void mouseExited(MouseEvent e);
}
與其對應的適配器為MouseAdapter:
public abstract class MouseAdapter implements MouseListener f
public void mouseClicked(MouseEvent e){}
public void mousePressed(MouseEvent e){}
public void mouseReleased(MouseEvent e){)
public void mouseEntered(MouseEvent e){}
public void mouseExited(MouseEvent e){}
}
這樣,在創(chuàng)建新類時,就可以不實現(xiàn)接口,而是只繼承某個適當?shù)倪m配器,并且覆蓋所關心的事件處理方法。程序8—4就是一個使用適配器的例子。
mouseClicked(MouseEvent)
mousePressed(MouseEvent)
mouseReleased(MouseEvent)
mouseEntered(MouseEvent)
mouseExited(MouseEvent)
在實現(xiàn)MouseI。istener接口的類中,必須同時實現(xiàn)這五個方法。
由于在某些情況下,實際關心的只是接口中的個別方法,因此為了編程方便,Java為那些聲明了多個方法的Listener接口提供了一個對應的適配器(Adapter)類。
在適配器類中實現(xiàn)了相應接1:3中的全部方法,只是方法的內容為空。例如MouseListener接口的形式如下:
public interface MouseListener extends EventListener {
public void mouseClicked(MouseEvent e);
public void mousePressed(MouseEvent e);
public void mouseReleased(MouseEvent e);
public void mouseEntered(MouseEvent e);
public void mouseExited(MouseEvent e);
}
與其對應的適配器為MouseAdapter:
public abstract class MouseAdapter implements MouseListener f
public void mouseClicked(MouseEvent e){}
public void mousePressed(MouseEvent e){}
public void mouseReleased(MouseEvent e){)
public void mouseEntered(MouseEvent e){}
public void mouseExited(MouseEvent e){}
}
這樣,在創(chuàng)建新類時,就可以不實現(xiàn)接口,而是只繼承某個適當?shù)倪m配器,并且覆蓋所關心的事件處理方法。程序8—4就是一個使用適配器的例子。

