设计模式-适配器模式
适配器模式定义
适配器模式,将一个类的的接口转换成客户或者产品希望的接口形式,就是原本不兼容或者甚至不相干的接口不能一起工作的接口一起工作,完成需求或者客户的需求。
适配器模式的使用场景
1、当你使用一个已经存在的类,而他的接口不符合你的需求。
2、你想要创建一个复用的类,该类可以与其相关的类或者不可见的类协同工作。
适配器角色
Target:目标接口
TargetImpl:目标实现类
Adapter:适配器
Adaptee:被适配者
代码解析:
package com.design.pattern.adapter;
/**
* 目标接口类
* Created by sdc on 2017/9/3.
*/
public interface Target {
/**
* 处理方法
*/
public void spider();
}
package com.design.pattern.adapter;
/**
* Created by sdc on 2017/9/3.
*/
public class TargetImpl implements Target {
@Override
public void spider() {
//dosomething
System.out.println("dosomething");
}
}
package com.design.pattern.adapter;
/**
* 适配者
* Created by sdc on 2017/9/3.
*/
public class Adaptee {
public void spiderFor() {
System.out.println("Adaptee 适配器方法");
}
}
package com.design.pattern.adapter;
/**
* 被适配者3
* Created by sdc on 2017/9/3.
*/
public class Adapteer implements Target {
//适配者
private Adaptee adaptee = new Adaptee();
@Override
public void spider() {
adaptee.spiderFor();
}
}
package com.design.pattern.adapter;
/**
* Created by sdc on 2017/9/3.
*/
public class Main {
public static void main(String[] args) {
Target adapteer = new Adapteer();
adapteer.spider();
Target target1 = new TargetImpl();
target1.spider();
}
}
这样一个简单的设计模式完成了。有的时候项目里,有很多重复的代码,每天都会新建重复的代码,尝试着把代码抽取出来,或者可以用一些实际模式做出一些简单的设计,或许有不一样的效果。