sunxikai928的博客

学无止境

《java与模式》-11 适配器模式

适配器模式

适配器模式把一个类的接口变成客户端所期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作;
适配器的角色有目标角色(Target)、源角色(Adaptee)、适配器角色(Adapter);

类的适配效果:

  1. 适配器是源的子类,可以在适配器中置换掉源的方法;
  2. 只引用了一个适配器类因此只有一个路线到达目标类,问题得到简化;
  3. 使用一个具体类把源适配到目标中来如果源以及源的子类都使用此类适配就行不通了(不是很理解这句话);

对象适配器效果:

  1. 一个适配器可以把多种不同的源适配到同一个目标;
  2. 与类的适配相比,想要置换方法就不容易了,要先有一个子类将源的方法置换掉,然后把源的子类当做真正的源进行适配;
  3. 置换方法不容易,但是增加新的方法很方便,且新方法同时适用于所有的源;

这里写图片描述
场景:想找一个A,但是只找到了一个B,需要用适配模式将B适配成A
例:
当想要一个 JDBC 的接口实现,但是只有 MySQL 类,那么就将 MySQL 适配成 JDBC

缺省适配器模式

适配器模式
一种平庸化的适配器模式;
如果不准备实现一个接口的所有方法,可以制造一个抽象类,给出所有方法的平庸的具体实现,从这个抽象类再继承下去的所有子类就不必实现所有的方法了。
缺省适配的实现:
缺省适配类应当是个抽象类,提供的方法应当是具体方法;
例:java.awt.event.WindowAdapter

阅读更多
文章标签: java
个人分类: Java 设计模式
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭