设计模式-适配器模式
Posted vinlen
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了设计模式-适配器模式相关的知识,希望对你有一定的参考价值。
先举例子,安卓的耳机怎么查ios的手机? 往上有转接头,也叫适配器。当一个类想和另一个无关的类一起工作就需要适配器
安卓的耳机
public interface Target { void work(); }
ios的插孔
public class Adapte { public void adapte(){ System.out.println("听歌。"); } }
买个适配器
public class ClassAdaptee extends Adapte implements Target { @Override public void work() { adapte(); } }
测试类
public class Client { public static void main(String[] args) { new ClassAdaptee().work(); } }
现在如果想使用安卓的耳机和ios的插孔一起工作,只需要找适配器类,这叫做类适配器,如果将上面代码改一下,可以改为对象适配器
适配器改为
public class ObjectAdaptee implements Target { Adapte adapte; @Override public void work() { adapte.adapte(); } public ObjectAdaptee(Adapte adapte) { this.adapte = adapte; } }
测试类改为
public class Client2 { public static void main(String[] args) { ObjectAdaptee objectAdaptee = new ObjectAdaptee(new Adapte()); objectAdaptee.work(); } }
应用场景:当使用一些第三方的接口时,发现接口定义和自己要求的接口定义不同,这时候可以使用适配器。
以上是关于设计模式-适配器模式的主要内容,如果未能解决你的问题,请参考以下文章