设计模式探秘之适配器模式
Posted 洋葱头么
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了设计模式探秘之适配器模式相关的知识,希望对你有一定的参考价值。
将一个类的接口转换成客户希望的另外一个接口。适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。
/**
* 供电
*/
public interface Target {
/**
* 供电
*/
void power();
}
/**
* 三插头
*/
public class ThreePlug {
public void name() {
System.out.println("三插头插座供电");
}
}
/**
* 三插头适配器
*/
public class ThreePlugAdapter implements Target {
private ThreePlug threePlug;
public ThreePlugAdapter(ThreePlug threePlug) {
this.threePlug = threePlug;
}
public void power() {
this.threePlug.name();
}
}
/**
* 测试
*/
public class Demo {
public static void main(String[] args) {
Target adapter = new ThreePlugAdapter(new ThreePlug());
adapter.power();
}
}
调用者可以理解为是一个两插头的手机充电器,三插头适配器就是转换器,这样三插头的插座就可以为两插头的手机充电器充电。
优点:功能复用,接口不兼容的类可以一起工作。
缺点:适配器使用过多将导致系统零乱。
适配器模式的本质是转换已存在的接口从而达到复用的效果,如果接口本身还没有设计或者接口的功能差异很大,那么就不要使用适配器模式,换句话说,已经发生的事情无法改变才适用适配器模式。
以上是关于设计模式探秘之适配器模式的主要内容,如果未能解决你的问题,请参考以下文章