针对问题:将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。——Gang of Four
适配器模式结构图:
适配器模式实现代码:
/**
* 现实存在的接口
* @author bruce
*
*/
public interface Adaptee {
public void specificRequest();
}
/**
* 客户期望的接口
* @author bruce
*
*/
public interface Target {
public void request();
}
/**
* 适配器
* @author bruce
*
*/
public class Adapter implements Target{
private Adaptee adaptee;//组合现实存在的接口
public Adapter(Adaptee adaptee){
this.adaptee=adaptee;
}
public void request() {
// TODO Auto-generated method stub
adaptee.specificRequest();
}
}
/**
* 现实存在的类
* @author bruce
*
*/
public class ConcreteAdaptee implements Adaptee{
public void specificRequest() {
// TODO Auto-generated method stub
}
}
/**
* 将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。——Gang of Four
*/
/**
* 测试
* @author bruce
*
*/
public class Client {
public static void main(String[] args) {
Adaptee adaptee=new ConcreteAdaptee(); //根据已存在的类创建对象
Adapter adapter=new Adapter(adaptee); //继承目标接口并组合已存在的对象来生成适配器
adapter.request(); //可以调用该接口了
}
}
- 大小: 7 KB
分享到:
相关推荐
七个结构型模式 七个结构型模式 适配器模式-Adapter Pattern 不兼容结构的协调——适配器模式(一) 不兼容结构的协调——适配器模式(二) 不兼容结构的协调——适配器模式(三) 不兼容结构的协调——适配器模式...
23种设计模式(Design Pattern)的C++实现范例,包括下面列出的各种模式,代码包含较详细注释。另外附上“设计模式迷你手册.chm”供参考。 注:项目在 VS2008 下使用。 创建型: 抽象工厂模式(Abstract Factory) 生成...
DesignPattern 设计模式,共10章。内容详细,案例设计齐全。对设计可复用的面向对象的软件很有帮助,有助你写出又质量,并且可重复使用的高品质软件
Design Pattern: Simple Factory 模式 Design Pattern: Abstract Factory 模式 Design Pattern: Builder 模式 Design Pattern: Factory Method 模式 Design Pattern: Prototype 模式 Design Pattern: Singleton...
DesignPattern 新版設計模式(C#) 講述23種設計模式: ◆結構圖 ◆生活例子 ◆意圖 ◆適用性 ◆示例代碼 ◆實際應用
golang design pattern go 设计模式实现,包含 23 -go-design-pattern
本书已经成为面向对象技术人员的圣经和词典,书中定义的23个模式逐渐成为开发界技术交流所必备的基础知识和语汇。
深入浅出设计模式 (Head First Design Pattern)_带书签 深入浅出设计模式 (Head First Design Pattern)_带书签
DesignPattern_BasicKnowledge设计模式之类关系:设计模式 类关系 基础 依赖 关联
Design*Pattern*Framework*4.5
Mobile Design Pattern Gallery : UI Patterns for Mobile Applications原版 全彩 120M大容量《移动应用ui设计模式》是一本移动应用ui 设计模式参考书,分10 大类介绍了70 个移动应用设计模式(包括反模式),用400 ...
DesignPattern(设计模式迷你手册)
DesignPattern项目是设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。 设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发...
golang design pattern; 设计模式golang版本-go-design-patterns
Theresa Neil's new book "Mobile Design Pattern Gallery" provides solutions to common design challenges. There is inspiration on every topic from designing your application's navigation to choosing ...
C++ 23种设计模式(全_解释+源代码).zip 23种设计模式都是基于以下原则,务必记牢 依赖倒转原则 里氏代换原则 开闭原则 接口隔离原则 合成聚合复用原则 迪米特法则 23种设计模式如下:
chain 设计模式 DesignPattern 供应链模式
你不想重新发明车轮(或者更差的是,没有充气车胎的轮子),所以你从设计模式中寻求帮助—— 设计模式是过去人们面对同样的软件设计问题所得到的经验。 有了设计模式,就可以利用其他人的实践经验的精华, 因此省下...