• 设计模式 之 适配器模式


    简介

    适配器模式, 类似于 平板电脑连接网线, 需要适配器

    有两种方式, 一种通过类来继承实现, 另一种通过对象(组合)的方式来实现.

    code

    public class Computer {
        public void net(NetToUsb adapter) {
            // 上网的具体实现, 找一个转接头
            adapter.handleRequest();
        }
    
        public static void main(String[] args) {
            Computer c = new Computer();
            Adaptee adaptee = new Adaptee();
            Adapter2 adapter = new Adapter2(adaptee);
    
            c.net(adapter);
        }
    }
    
    

    // 没有自带上网功能, 但是可以使用插拔的方式进行自带上网功能.
    public class Adapter2 implements NetToUsb {
    private Adaptee adaptee;

    public Adapter2(Adaptee adaptee){
        this.adaptee = adaptee;
    }
    
    @Override
    public void handleRequest() {
        adaptee.request();
    }
    

    }

    public interface NetToUsb {
        public void handleRequest();
    }
    

    类适配器

    // 自带了Adaptee的上网功能
    public class Adapter extends Adaptee implements  NetToUsb {
        @Override
        public void handleRequest() {
            super.request(); // 可以上网了
        }
    }
    
    
    public class Adaptee {
        public void request(){
            System.out.println("连写网线上网");
        }
    }
    
    

    UML

    Hope is a good thing,maybe the best of things,and no good thing ever dies.----------- Andy Dufresne
  • 相关阅读:
    时间使用
    关于Dubbo说明及备注
    jQuery 的function简单备注
    Eclipse插件
    存储过程和视图的区别
    easyUi jqgrid search
    Python3内置函数——reversed() = 翻转我的世界
    你追求的目标正确吗
    Python3正则表示式(3)
    英语口语学习笔记(13)
  • 原文地址:https://www.cnblogs.com/eat-too-much/p/14819984.html
Copyright © 2020-2023  润新知