说道JAVA中的适配器模式,不得不引用该设计模式的固定表述“适配器模式(Adapter ):将一个类的接口转换成客户希望的另外一个接口,适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作”。该模式其实类似于90年代那会的稳压器,当时的电压没有现在这样稳定,看电视的 ...
说道JAVA中的适配器模式,不得不引用该设计模式的固定表述“适配器模式(Adapter ):将一个类的接口转换成客户希望的另外一个接口,适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作”。该模式其实类似于90年代那会的稳压器,当时的电压没有现在这样稳定,看电视的时候经常会出现闪屏的现象,为此爷爷专门通过工作关系渠道搞到全村第一台稳压器(见下图,哎老爷子拍照之前也不说弄弄干净,大伙凑合看下),从起开启了童年里幸福的观影时光。
现在21世纪了,除了老旧的稳压器外,各种各样的适配器已经是随处可见了(各种手机充电适配器,电脑电源适配器等等),这里为了方便大家理解,我们用做常用的电脑电源适配器来讲解今天的设计模式,首先要明确的是在这整个过程中我们只有三个具体的对象,分别是电源(插座)、适配器,电脑(电池)。下来我们开始撸代码:
1 /*首先我们需要建立一个电源(插板)的接口,并提供对应方法 2 * (之所用接口是为了方便适配器实现) 3 */ 4 interface Power{ 5 public void electric(); 6 } 7 //首先我们需要建立一个电脑的接口,并提供对应方法 8 interface Computer{ 9 public void battery();10 }11 //建立分别实现两个接口的类12 class PowerImpl implements Power{13 @Override14 public void electric() {15 System.out.println("我有电");16 }17 }18 class ComputerImpl implements Computer{19 @Override20 public void battery() {21 System.out.println("我有电池");22 }23 }24 /*25 * 建造适配器(这里我个人认为作为适配器,应该同时实现他所连接的两个接口26 * ,在这里就是电源和电脑的接口)27 */28 class Adapter implements Power,Computer{29 /*适配器中声明名两个接口,并分别建立构造方法30 * (适配器中应该有支持两种接口的模块)31 */32 Power power;33 Computer computer;34 35 public Adapter(Power power) {36 super();37 this.power = power;38 }39 public Adapter(Computer computer) {40 super();41 this.computer = computer;42 }43 /*适配器核心代码:44 * 可以理解为要实现电脑电池充电的方法,就必须调用电源的电方法。45 * 同理在这个过程中电源的电要实现自身价值,就必须调用电脑的电池。46 */47 @Override48 public void battery() {49 power.electric();50 }51 @Override52 public void electric() {53 computer.battery();54 }55 }
原标题:JAVA适配器模式(从现实生活角度理解代码原理)
关键词:JAVA
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:
admin#shaoqun.com
(#换成@)。