zoukankan      html  css  js  c++  java
  • 13、Adapter 适配器

    适配器:继承适配与委托适配

    需求:Banner 可以输出强电流380v、弱电流12v,但是不能被直接使用。通过别的方式,介间的使用banner?

    委托类图:

    代码清单:

     需要隐藏的功能类:

    public class Banner {
        public void showWithParen(){
            System.out.println("加强输出 380V");
        }
    
        public void showWithAster(){
            System.out.println("减弱输出 12V");
        }
    }

    代理接口:

    public interface Print {
        void printStrong();
        void printWeak();
    }

    代理实现:

    public class PrintBanner implements  Print{
         private Banner banner;
    
         PrintBanner(Banner banner){
             this.banner = banner;
         }
    
        @Override
        public void printStrong() {
            banner.showWithParen();
        }
    
        @Override
        public void printWeak() {
            banner.showWithAster();
        }
    }

    测试类:

    public class Main {
        public static void main(String[] args){
            Print print = new PrintBanner(new Banner());
            print.printStrong();
            print.printWeak();
        }
    }
  • 相关阅读:
    kvm
    docker及lvs负载
    zookeeper,及k8s基础概念
    zabbix-proxy及ELK
    gitlab及jenkins
    绘图 Matplotlib Numpy Pandas
    Elasticsearch
    Git命令小结
    win黑窗口命令
    Linux基础命令
  • 原文地址:https://www.cnblogs.com/baizhuang/p/10400387.html
Copyright © 2011-2022 走看看