1.Adapter模式理論
Adapter模式又稱變壓器模式,關于該模式的基本概念請參考其他書籍或資料;這里我們只粗略討論該模式兩大實現方法的區別:基于類的Adapter模式和基于對象的Adapter模式。
基于類的Adapter模式的一般結構如下:Adaptee類為Adapter的父類,Adaptee類為適配源,適配目標(接口)也是Adapter的父類;基于類的Adapter模式比較適合應用于Adapter想修改Adaptee的部分方法的情況。基于對象的Adapter模式的一般結構如下:Adaptee類對象為Adapter所依靠,適配目標(接口)是Adapter的父類;基于對象的Adapter模式比較適合應用于Adapter想為Adaptee添加新的方法的情況。但在Adaptee類的方法與Adapter類的方法不同名而實現相同功能的情況下,我們一般也使用基于對象的Adapter模式,在J2SE事件處理中,我們就大量使用了基于對象的Adapter模式。
2.J2SE中的事件處理
J2SE中的事件處理代碼示例如下:
public class WebFormDesigner extends JFrame {
void jbInit() throws Exception {
text.addActionListener(new WebFormDesigner_text_actionAdapter(this));
}
void text_actionPerformed(ActionEvent e) {
TextDialog createText = new TextDialog();
createText.setVisible(true);
createText.setTitle("TEXT");
createText.setBounds(100, 100, 500, 300);
createText.setModal(true);
createText.show();
由上面的分析可見,WebFormDesigner在本例中是Adaptee, WebFormDesigner_text_actionAdapter在本例中是Adapter, java.awt.event.ActionListener在本例中是適配目標。
適配目標為一接口,代碼如下:
public interface ActionListener extends EventListener {
/**
新聞熱點
疑難解答