`
lvwenwen
  • 浏览: 955438 次
  • 性别: Icon_minigender_1
  • 来自: 魔都
社区版块
存档分类
最新评论

java设计模式之适配器模式(结构型模式)

阅读更多

 

(9).适配器模式

文章链接:http://chjl2020.iteye.com/blog/262370

适配器:基于现有类所提供的服务,向客户提供接口,以满足客户的期望 

过程:

1>客户通过目标接口调用适配器方法对适配器发出请求

2>适配器使用被适配者接口把请求转化成被适配者的一个或多个调用接口

3>客户接收到调用结果,但并未察觉这一切是适配器在起转换作用

1>当需要使用一个现有的类而其接口丌符合你的要求时,就需要使用适配器模式

2>适配器模式将一个对象包装起来改变其接口,装饰者模式将一个对象包装起来增加新的行为戒责仸

3>适配器的意图是将接口转换为丌同的接口

 

package com.createtype.desginpatterns.adapter;
//用适配器模式: 
//以上就是适配器的实现方法之一,类适配器,在以上实现中存在着三中角色分别是: 
//2:适配类(原)角色:OtherOperation。 
//3:适配器角色:AdapterOperation。 
//其中适配器角色是适配器模式的核心。 
//适配器的主要工作就是通过封装现有的功能,使他满足需要的接口。 
public class AdapterOperation extends OtherOperation implements Operation{
      public int add(int a,int b){
           return otherAdd(a,b);
      }

	public int minus(int a, int b) {
		// TODO Auto-generated method stub
		return 0;
	}

	public int multiplied(int a, int b) {
		// TODO Auto-generated method stub
		return 0;
	}
}
package com.createtype.desginpatterns.adapter;

//由于java是不能实现多继承的,所以我们不能通过构建一个适配器,
//让他来继承所有原以完成我们的期望,这时候怎么办呢?只能用适配器的另一种实现--对象适配器: 
public class AdapterOperation2 implements Operation {
	private OtherAdd add;
	private OtherMinus minus;
	private OtherMultiplied multiplied;

	public void setAdd(OtherAdd add) {
		this.add = add;
	}

	public void setMinus(OtherMinus minus) {
		this.minus = minus;
	}

	public void setMultiplied(OtherMultiplied multiplied) {
		this.multiplied = multiplied;
	}

	// 适配加法运算
	public int add(int a, int b) {
		return add.otherAdd(a, b);
	}

	// 适配减法运算
	public int minus(int a, int b) {
		return minus.minus(a, b);
	}

	// 适配乘法运算
	public int multiplied(int a, int b) {
		return multiplied.multiplied(a, b);
	}
}
package com.createtype.desginpatterns.adapter;
public interface Operation{
      public int add(int a,int b);
      public int minus(int a,int b);
      public int multiplied(int a,int b);
}

package com.createtype.desginpatterns.adapter;
public class OtherAdd{
      public int otherAdd(int a,int b){
           return a + b;
      }
}

package com.createtype.desginpatterns.adapter;
public class OtherMinus{
      public int minus(int a,int b){
           return a - b;
      }
}
package com.createtype.desginpatterns.adapter;
public class OtherMultiplied{
      public int multiplied(int a,int b){
           return a * b;
      }
}
package com.createtype.desginpatterns.adapter;
public class OtherOperation{
      public int otherAdd(int a,int b){
           return a + b;
      }
}
分享到:
评论

相关推荐

    java设计模式之适配器模式

    适配器模式是一种在软件工程中广泛使用的结构型设计模式,它允许两个不兼容的接口之间进行通信。在Java中,适配器模式扮演着重要的角色,尤其在处理遗留代码或者第三方库集成时,能够有效地解决接口不匹配的问题。...

    Java设计模式之适配器模式

    ### Java设计模式之适配器模式详解 #### 引言 在软件开发中,我们经常遇到需要使用已有的类库,但这些类库的接口与我们的需求不匹配的情况。这时,适配器模式(Adapter Pattern)便能派上用场。适配器模式是一种...

    JAVA设计模式(抽象类与适配器模式)

    同时,“[浪曦原创]JAVA设计模式 第1讲 抽象类与适配器模式(jzkangta).exe”应该是一个视频教程,可以帮助你更直观地学习。PPT文件“抽象类与适配器模式.ppt”则可能是教学幻灯片,列出了关键点和示例。最后,“demo...

    java设计模式之适配器模式.zip

    适配器模式是一种在软件设计中广泛使用的结构型设计模式,它的主要目的是使不兼容的接口之间能够进行通信。在Java编程中,适配器模式能够帮助我们复用已有的类,或者解决新旧系统之间的接口不匹配问题,从而提高代码...

    Java 23种设计模式10适配器模式.pdf

    ### Java设计模式之适配器模式详解 #### 结构型模式概述 在软件工程领域,设计模式被视为一种标准解决方案,用于解决在特定上下文中经常出现的问题。设计模式按其目的和适用场景,大致可分为三种类型:创建型模式...

    JAVA-设计模式-结构型模式-适配器模式

    JAVA-设计模式-结构型模式-适配器模式

    java常用设计模式-适配器模式

    适配器模式(Adapter Pattern)是一种结构型设计模式,它允许不兼容的接口之间进行通信。这种模式可以在不修改现有代码的情况下重用现有类,并且可以使不兼容的接口之间进行通信。 适配器模式的定义 适配器模式是...

    深入浅出Java设计模式之适配器模式[借鉴].pdf

    适配器模式是一种结构型设计模式,允许不兼容的接口之间进行交互。在Java中,适配器模式主要通过接口或者抽象类来实现,以达到在不修改现有代码的基础上,使得原本无法一起工作的类协同工作。 适配器模式主要有两种...

    Java设计模式适配器模式代码架构

    Java设计模式中的适配器模式(Adapter Pattern)是一种结构型设计模式,它的主要目的是将不兼容的接口转换为用户期望的接口,使原本由于接口不兼容而无法一起工作的类能够协同工作。适配器模式有两种形式:类适配器...

    设计模式之适配器模式与外观模式demo

    在软件设计领域,设计模式是一种经过时间和实践验证的解决方案,用于解决常见的...这个"设计模式之适配器模式与外观模式demo"资源为学习和实践这两种模式提供了宝贵的实例,对于提升编程技能和设计思维具有积极意义。

    Java设计模式之结构型模式源码以及文档

    今天我们要探讨的是“Java设计模式之结构型模式”。结构型模式主要关注如何组织类和对象,以达到良好的架构,提升代码的可读性和可维护性。在这个主题中,我们将深入理解并讨论这些模式的原理、应用场景及其实现。 ...

    深入浅出设计模式之适配器模式与外观模式

    ### 深入浅出设计模式之适配器模式与外观模式 在软件工程领域,设计模式被广泛地应用于解决常见的编程问题。其中,《Head First 设计模式》是一本非常受欢迎的经典著作,它通过生动有趣的例子帮助读者理解并掌握...

    讲故事,学(Java)设计模式-适配器模式Java开发Ja

    适配器模式是一种结构型设计模式,它的主要目的是使不兼容的接口之间能够进行通信。在这个“讲故事,学(Java)设计模式—适配器模式”的主题中,我们将深入探讨这个模式的原理、应用和优势。 适配器模式的核心思想...

    《Java设计模式》刘伟 课后习题及模拟试题答案.rar

    课后习题参考答案部分涵盖了书中各个章节的关键知识点,包括创建型模式(如单例模式、工厂方法模式、抽象工厂模式)、结构型模式(如适配器模式、装饰器模式、代理模式、桥接模式、组合模式、外观模式、享元模式)...

    JAVA设计模式(java设计)

    Java设计模式是面向对象编程领域中的重要概念,它是一套被广泛接受并实践的解决软件设计问题的经验总结。设计模式并非具体的代码或库,而是一种在特定情境下为了解决常见问题而制定的通用解决方案的描述。它们描述了...

    《Java设计模式》课后答案-刘伟.rar

    《Java设计模式》是刘伟教授的一本关于设计模式的教材,主要面向高等学校的学生和对Java编程有深入兴趣的开发者。设计模式是软件工程中的一种重要思想,它封装了在特定场景下的问题解决方案,可以提高代码的可读性、...

    java设计模式pdf

    ### Java设计模式详解 #### 一、背景与概念 在软件工程领域,设计模式是一种用于解决常见问题的可重用解决方案。《Java设计模式PDF》是一本由James W. Cooper编写的经典书籍,该书详细介绍了Java编程语言中的设计...

    《java设计模式》课后习题模拟试题解答——刘伟.zip

    Java设计模式是软件工程中的一种最佳实践,它总结了在特定场景下解决常见问题的经验,为程序员提供了可重用的解决方案。本资料“《java设计模式》课后习题模拟试题解答——刘伟.zip”主要涵盖了Java设计模式的学习与...

    java 23种设计模式.zip

    2.结构型模式:适配器模式、桥接模式、装饰模式、组合模式、外观模式、享元模式、代理模式。 4.行为型模式:模板方法模式、命令模式、迭代器模式、观察者模式、中介者模式、备忘录模式、解释器模式、状态模式、策略...

Global site tag (gtag.js) - Google Analytics