学学设计方式【适配器模式】
学学设计模式【适配器模式】
适配器设计模式:又叫做变压器模式或者包装模式。适配器很常见,比如笔记本是的电源适配器等,将原来完全不符合标准的两个东西通过一个适配器(中间物体)转换下,使两个完全不同德东西可以组合在一起使用。不过适配器模式在一般的设计中应该不用考虑,除非项目重要改动原有的接口,风险比较大。为了降低风险,可能适配器就是最好的选择了。
下面是一个适配器模式图:
下面是上面图的代码部分:
1、首先是目标接口类 Tatget:
package com.myapp.adapter; /** * 目标角色,就是将要将某个类转化为这个角色 * @author seeeyou * */ public interface Target { /** * 目标类的方法 */ public void request(); }
package com.myapp.adapter; /** * 目标类的实现类 * @author seeeyou * */ public class ConcreteTarget implements Target{ public void request() { System.out.println("我是目标类的实现类...."); } }
2、源目标类:Adaptee
package com.myapp.adapter; /** * 适配器源角色,将会需要一个适配器类将这个类转换为目标角色 * @author seeeyou * */ public class Adaptee { public void doSomthing() { System.out.println("我是源角色的方法。。。"); } }
3、最后的一个重要的类:适配器类:Adapter:
package com.myapp.adapter; /** * 最重要的角色,适配器 * @author seeeyou * */ public class Adapter extends Adaptee implements Target{ /** * 实现了目标类,继承了源角色类 */ public void request() { //这里调用源角色的方法, //这样就将源角色方法 转换为了tartget接口的方法 doSomthing(); } }
这就是最通用的适配器设计模式部分吧。