zoukankan      html  css  js  c++  java
  • Java设计模式之适配器模式

    在Java中规定: 一个具体类要实现一个接口的时候必须要实现接口中全部的抽象方法。

    我们能否让一个具体类实现一个接口的时候 只是实现它接口中的部分的抽象方法呢?

    适配器模式就是用来掘金一个具体类只想实现接口中部分抽象方法的这种问题。

    import java.awt.Frame;

    public class MyFrame extends Frame{
        public MyFrame(String title){
            super(title);        
        }
    }

    import java.awt.event.WindowEvent;
    import java.awt.event.WindowListener;

    public abstract class WindowAdapter implements WindowListener {

        @Override
        public void windowOpened(WindowEvent e) {
        
        }
        
        @Override
        public void windowClosing(WindowEvent e) {
        
        }
        
        @Override
        public void windowClosed(WindowEvent e) {
        
        }
        
        @Override
        public void windowIconified(WindowEvent e) {
        
        }
        
        @Override
        public void windowDeiconified(WindowEvent e) {
        
        }
        @Override
        
        public void windowActivated(WindowEvent e) {
        
        }
        
        @Override
        public void windowDeactivated(WindowEvent e) {
        
        }
    }


    import java.awt.event.WindowEvent;

    public class MyWindowListener extends WindowAdapter{
        
        @Override
        public void windowClosing(WindowEvent e){
            System.exit(0);//退出JMVM
        }        
    }

    import java.awt.Frame;

    public class Main {
        public static void main(String[] args) {    
            MyFrame mf = new MyFrame("我的窗口程序");
            mf.setSize(1000,1000);        //设置窗口大小
            mf.setLocation(200,200);    //设置窗口位置
            mf.setVisible(true);        //默认不可见 改为可见
            mf.addWindowListener(new MyWindowListener());   //添加监听器            
        }
    }

    这种方式 通过创建 一个抽象类WindowAdapter,平庸实现了目标接口WindowListener,

          让具体类MyWindowListener继承WindowAdapter这个抽象类,然后在覆盖自己所需要的方法。

  • 相关阅读:
    java-jdbc基础巩固
    webservice简单的编写,发布,调用
    HanLP笔记
    HanLP笔记
    HanLP笔记
    HanLP笔记
    Python学习小计
    R学习小计
    SPSS学习小记
    C语言学习小记
  • 原文地址:https://www.cnblogs.com/zwjcom/p/11142473.html
Copyright © 2011-2022 走看看