美文网首页
设计模式之适配器—我要给iPhone充个电

设计模式之适配器—我要给iPhone充个电

作者: 爱骑车的豆子 | 来源:发表于2020-05-26 21:42 被阅读0次

    定义

    将一个类的接口转换成客户期望的另一个接口,适配器让原本接口不兼容的类可以相互合作。

    如何使用

    适配器模式同样来自于我们生活中,如手机的电源适配器,同样笔记本电脑/Pad等都需要电源适配器,原因就是电子设备需要的电源接口不是220V,是需要使用适配器进行转换的(5V等),那对应成代码是怎么样的呢(适配器模式如何落地呢)?

    首先有一个220V电源的接口和实现

    public interface V220Power {
        /**
         * 
         * @return 电源电压
         */
        int getPower();
    }
    
    public class V220PowerImpl implements V220Power {
        @Override
        public int getPower() {
            return 220;
        }
    }
    

    现在需要一个5V的电源接口,可以给iPhone充电

    public interface V5Power {
        int getPower();
    }
    

    实现一个5V电源适配器,来将220V转换为5V

    public class V5PowerAdapter implements V5Power {
    
        private V220Power v220Power;
    
        public V5PowerAdapter(V220Power v220Power) {
            this.v220Power = v220Power;
        }
    
        @Override
        public int getPower() {
            int power = this.v220Power.getPower();
            //经过复杂的处理,将220V转换为5V
            power = 5;
            return power;
        }
    }
    

    总结

    至此成功地将220V电压的电源适配到了5V电压,给我的iPhone充上了电;适配器就是将已有的接口转换为满足需求的新接口,且同时可以使用已有接口的结果,降低了修改的成本的同时,也增强了扩展性。

    相关文章

      网友评论

          本文标题:设计模式之适配器—我要给iPhone充个电

          本文链接:https://www.haomeiwen.com/subject/qcjbahtx.html