`

适配器模式(Adapter Pattern)_Java

阅读更多

Adapter Pattern



 

问题:

有一只狼,它披上了羊皮,从外表上看,根本看不出来它是一只狼,只有当它跑和叫的时候,才能区分它!



 

 

Java实现

package com.pattern.adapter;

public interface Sheep {

	public void run();//羊叫
	public void bark();//羊跑
}

 

package com.pattern.adapter;

public class SmallSheep implements Sheep{

	@Override
	public void run() {
		System.out.println("小羊跑...");
	}

	@Override
	public void bark() {
		System.out.println("小羊叫...");
	}

}

 

package com.pattern.adapter;

public class Wolf {

	public void run(){
		System.out.println("狼跑....");
	}
	public void bark(){
		System.out.println("狼叫....");
	}
}

 

package com.pattern.adapter;

public class SheepAdapter implements Sheep{
	
	private Wolf wolf;
	
	public SheepAdapter(Wolf wolf){
		this.wolf=wolf;
	}
	
	@Override
	public void run() {
		wolf.run();
	}

	@Override
	public void bark() {
		wolf.bark();
	}

}

 

package com.pattern.adapter;

public class Test {

	public static void main(String[] args) {
		Wolf wolf=new Wolf();//有一只狼
		Sheep wolfSheep=new SheepAdapter(wolf);//它穿上了羊皮,变成了披着羊皮的狼
		wolfSheep.run();//狼跑....
		wolfSheep.bark();//狼叫....
		Sheep smallSheep=new SmallSheep();
		smallSheep.run();//小羊跑...
		smallSheep.bark();//小羊叫...
	}
}

适配器模式的过程

狼(wolf)穿上了羊皮(SheepAdapter)变成了穿着羊皮的狼,外观上看已经是一只羊了,但本质不是。

适配器模式与装饰者模式的区别

  • 他们的结构几乎是一样的,只是他们的作用不一样
  • 适配器模式将一个对象包装起来改变其接口(狼变成羊了,虽然是假的)
  • 装饰者模式是把一个对象包装起来增加其功能或特点(蛋糕变成草莓蛋糕了,还是蛋糕嘛)
  • 大小: 242.5 KB
  • 大小: 349.7 KB
  • 大小: 220.8 KB
分享到:
评论

相关推荐

    JAVA 23种设计模式(全).Design Pattern_Java模式

    包括适配器模式(Adapter)、桥接模式(Bridge)、装饰模式(Decorator)、外观模式(Facade)、享元模式(Flyweight)、组合模式(Composite)和代理模式(Proxy)。 3. **行为型模式**(Behavioral Patterns):...

    java设计模式之适配器模式

    适配器模式(Adapter Pattern)是通过创建一个新的对象(适配器),这个对象将原本不兼容的对象接口转换为客户端期望的接口,从而使两者能够协同工作。适配器模式可以分为类适配器和对象适配器两种类型。 1. 类...

    设计模式之适配器模式(Adapter Pattern)

    Java中,由于单继承的限制,通常更常用的是对象适配器模式。 适配器模式的结构主要包括三个角色: 1. 目标接口(Target):客户所期待的接口,适配器要提供这个接口。 2. 适配者(Adaptee):被适配的类,它的接口...

    设计模式 之 “适配器模式[Adapter Pattern]”

    适配器模式(Adapter Pattern)是软件设计模式中的一种,其主要目的是使两个不兼容的接口之间能够协同工作。在IT行业中,我们经常遇到不同系统、库或组件之间的接口不一致,导致它们无法直接交互。适配器模式就提供...

    适配器模式(Adapter Pattern)原理图

    适配器模式是一种结构型设计模式,它允许接口不兼容的两个类可以协同工作。以下是该模式的要点: 1. **角色**: - **Target(目标接口)**:客户端期望调用的接口。 - **Adaptee(适配者)**:现有的、接口与目标...

    设计模式——适配器模式(adapter)

    适配器模式(Adapter Pattern)是软件设计模式中的一种,其主要目的是解决系统中的接口不兼容问题,使得原本由于接口不匹配而无法一起工作的类能够协同工作。在本文中,我们将深入探讨适配器模式的概念、结构、作用...

    适配器模式adapter,含源码下载

    适配器模式(Adapter Pattern)是一种结构型设计模式,它能将两个不兼容的接口连接在一起,使得原本由于接口不匹配而无法一起工作的类能够协同工作。在IT行业中,适配器模式广泛应用在系统集成、组件重用以及解决...

    Java开发适配器模式详解

    适配器模式(Adapter Pattern)是一种常用的设计模式,其主要目的是让两个不兼容的接口能够协同工作。通过引入一个适配器,可以将现有类的接口转换成客户端期望的另一个接口,从而使原本由于接口不兼容而不能一起工作...

    C++设计模式课件16_Adapter_适配器.pdf

    ### 设计模式——适配器模式(Adapter Pattern) 在软件工程领域中,设计模式是一种用于解决常见问题的标准化方法。这些模式提供了一种系统化的解决方案,帮助开发人员编写出更易于理解、维护和扩展的代码。适配器...

    Java设计模式之适配器模式

    这时,适配器模式(Adapter Pattern)便能派上用场。适配器模式是一种结构型设计模式,它允许两个不兼容的接口能够协同工作。本文将深入探讨适配器模式的原理、分类以及在Java中的实现方式。 #### 适配器模式的基本...

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

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

    java设计模式;适配器模式(类)

    适配器模式(Adapter Pattern)是其中的一种,它允许两个不兼容的接口之间进行通信,通过创建一个适配器类来将原有接口转换成目标接口,使得原本不能一起工作的类可以协同工作。 适配器模式分为类适配器和对象...

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

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

    Java24种设计模式,Java24种设计模式,24种设计模式,学会了这24种设计模式,可以打遍天下无敌手,设计模式非常重要

    8、适配器模式ADAPTER PATTERN 9、模板方法模式TEMPLATE METHOD PATTERN 10、建造者模式BUILDER PATTERN 11、桥梁模式BRIDGE PATTERN 12、命令模式COMMAND PATTERN 13、装饰模式DECORATOR PATTERN 14、迭代器模式...

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

    适配器模式(Adapter Pattern)的主要目的是将两个不兼容的接口融合在一起,使得原本不能协同工作的类能够一起工作。这种模式通常在我们需要使用一个已有类,但其接口不符合我们的需求时使用。适配器模式包含三个...

    设计模式之适配器Adapter

    标题“设计模式之适配器Adapter”暗示我们将深入探讨适配器模式的核心概念和应用场景。适配器模式通常应用于以下场景: 1. 当系统中存在一个已经存在的类,其接口不符合新需求时,可以使用适配器模式来调整接口,使...

    【Java设计模式-源码】Java 中的适配器模式:无缝集成不兼容系统

    在 Java 开发中,适配器模式(Adapter Pattern)是一种非常有用的结构型设计模式,它可以帮助我们解决接口不兼容的问题,实现不同类之间的无缝集成。本文将详细介绍适配器模式的意图、解释、编程示例、适用场景、...

    设计模式_适配器模式.zip

    适配器模式(Adapter Pattern)是作为两个不兼容的接口之间的桥梁。这种类型的设计模式属于结构型模式,它结合了两个独立接口的功能。 这种模式涉及到一个单一的类,该类负责加入独立的或不兼容的接口功能。举个...

    java设计模式之适配器模式(Adapter)

    适配器模式(Adapter Pattern)是软件设计模式中的一种,其主要目的是解决接口不兼容问题,使得原本因为接口差异无法协同工作的类能够协同工作。在Java中,适配器模式通常分为类的适配器模式和对象的适配器模式。 ...

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

    **定义**:适配器模式(Adapter Pattern)是一种结构型设计模式,允许不兼容的接口协同工作。该模式涉及到一个包含现有类的接口转换到客户端希望使用的另一个接口的对象。适配器模式使得原本由于接口不兼容而不能一起...

Global site tag (gtag.js) - Google Analytics