请关注
www.ppst.cc在线视频教程平台
在计算机编程中,适配器模式(有时候也称包装样式或者包装)将一个类的接口适配成用户所期待的。一个适配允许通常因为接口不兼容而不能在一起工作的类工作在一起,做法是将类自己的接口包裹在一个已存在的类中。
有两类适配器模式: ·对象适配器模式 - 在这种适配器模式中,适配器容纳一个它我包裹的类的实例。在这种情况下,适配器调用被包裹对象的物理实体。 ·类适配器模式 - 这种适配器模式下,适配器继承自已实现的类(一般多重继承)。 关于JAVA适配器的解释 将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 ——Gang of Four 基本概念: 客户:需要调用我们的代码的对象。 Adapter模式的宗旨:保留现有类所提供的服务,向客户提供接口,以满足客户的期望。 主要内容: (1)类适配器: 当客户在接口中定义了他期望的行为时,我们就可以应用适配器模式,提供一个实现该接口的类,并且扩展已有的类,通过创建子类来实现适配。 下面是类适配器的UML图: (2)对象适配器: 对象适配器”通过组合除了满足“用户期待接口”还降低了代码间的不良耦合。在工作中推荐使用“对象适配”。 下面是对象适配器的UML图: (3) 缺省适配器模式: 缺省适配器模式是一种特殊的适配器模式,但这个适配器是由一个抽象类实现的,并且在抽象类中要实现目标接口中所规定的所有方法,但很多方法的实现都是“平庸”的实现,也就是说,这些方法都是空方法。而具体的子类都要继承此抽象类。 适用情况: 使用的前提: 1.接口中规定了所有要实现的方法 2.但一个要继承此接口的具体类,只用到了其中的几个方法,而其它的方法都是没有用的。 具体实现: 1.用一个抽象类继承已有的接口,并实现接口中所规定的所有方法,这些方法的实现可以都是“平庸”实现----空方法;但此类中的方法是具体的方法,而不是抽象方法,否则的话,在具体的子类中仍要实现所有的方法,这就失去了适配器本来的作用。 2.原本要继承接口的子类,只继承1中的抽象类即可,并在其内部实现时,只对其感兴趣的方法进行实现。 注: 1.充当适配器角色的类就是:继承已有接口的抽象类 2.为什么要用抽象类: 此类是不要被实例化的。而只充当适配器的角色,也就为其子类提供了一个共同的接口,但其子类又可以将精力只集中在其感兴趣的地方。 总结: 如何做到一个类不被实例化或者不被轻易实例化? 1.把一个类定义为抽象类; 2.把一个类的构造方法设置为:private类型的,这样在客户端就不能通过new ClassName()方法来轻易将一个类实例化,而要生成此类的实例就必须通过一个特殊的方法,这样在一个系统中,对此类的使用就能得到合理的控制(如:单例模式/多例模式/简单工厂方法等模式)。
一、类适配器:
1.定义一个接口:
public interface AdatorImplements
{
public void doPrintln();
}
2.定义一个应用类:
public class Replace
{
public void doReplace()
{
System.out.println("打印了doreplace。");
}
}
3.适配器开发
public class DoProcess extends Replace implements AdatorImplements
{
public void doPrintln()
{
System.out.println("这是个类适配器!");
}
public void doReplace()
{
System.out.println("打印了doreplace。");
}
}
4。对象适配器:
public class DoProcess implements AdatorImplements
{
public Replace replace;
public DoProcess ()
{
this.replace = replace;
}
public void doPrintln()
{
this.replace.doReplace();
System.out.println("打印了doPrintln。");
}
}
分享到:
相关推荐
今天我们要探讨的是JAVA设计中的两个重要模式:抽象类与适配器模式。 首先,我们来理解一下“抽象”。抽象是面向对象编程的核心概念之一,它帮助我们处理对象的复杂性。在Java中,抽象通常通过抽象类来实现。抽象类...
Java适配器模式 Java适配器模式是指将一个接口转换成客户希望的另外一个接口,使得原来由于接口不兼容而不能在一起工作的那些类可以一起工作。它是一种结构型模式,它可以帮助我们更好地实现接口之间的转换。 概念...
在上述描述的Java适配器模式中,我们可以看到适配器模式在Java语言中的具体应用。 首先,适配器模式涉及到几个关键的组件: 1. Target(目标接口):这是客户所期待的接口,目的是通过接口来实现所需的功能。 2. ...
在这个Java实现中,我们将深入探讨适配器模式的两大类型:类适配器模式和对象适配器模式,并通过具体的代码示例和UML类图来阐述其工作原理。 首先,我们来理解适配器模式的基本概念。适配器模式就像现实生活中的...
在Java中,适配器模式扮演着重要的角色,尤其在处理遗留代码或者第三方库集成时,能够有效地解决接口不匹配的问题。本文将深入探讨适配器模式的概念、类型、优点和如何在Java中实现。 一、适配器模式概念 适配器...
Java适配器模式定义与用法示例 Java适配器模式是一种结构型设计模式,用于将一个类的接口转换成客户想要的另一个接口,使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。该模式主要包括三个角色:目标、...
在"适配器模式.docx"文档中,可能详细介绍了适配器模式的概念、结构、优缺点以及适用场景,并通过具体的Java代码示例展示了如何实现适配器模式。这些示例可能包括类适配器和对象适配器两种形式,展示如何在实际项目...
Java 适配器模式应用之电源适配器功能详解 Java 适配器模式是一种常用的设计模式,用于解决两个不兼容的对象之间的接口不兼容问题。在电源适配器的应用中,Java 适配器模式可以实现不同电压和频率的电源之间的转换...
在Java中,适配器模式主要分为两种类型:类适配器模式和对象适配器模式。类适配器模式通过继承目标接口和被适配者类来实现,而对象适配器模式则通过包含被适配者对象并实现目标接口来完成适配过程。 1. 类适配器...
### Java设计模式之适配器模式详解 #### 结构型模式概述 在软件工程领域,设计模式被视为一种标准解决方案,用于解决在特定上下文中经常出现的问题。设计模式按其目的和适用场景,大致可分为三种类型:创建型模式...
java适配器模式 java适配器模式是23种设计模式之一,它的主要作用是将一个类的接口转换成客户希望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 在java适配器模式中,有三个重要的...
适配器模式是软件设计模式中的一种,它的主要目的是解决不同接口之间的兼容性问题,使得原本由于接口不匹配而无法协作的类能够协同工作。适配器模式分为两类:类的适配器模式和对象的适配器模式。 类的适配器模式...
适配器模式是一种软件设计模式,它允许两个不兼容的接口之间进行通信。在本文中,我们将深入探讨适配器模式的概念、结构以及如何通过代码示例(即"Adapter"文件)来实现这一模式。 适配器模式的核心思想是解决系统...
Java 适配器模式详解 Java 适配器模式是一种结构型设计模式,主要用来解决不同接口之间的不兼容问题。在软件开发中,经常会遇到两个不同的接口之间需要进行交互的情况,这时就需要使用适配器模式来解决问题。 ...
适配器模式和外观模式是两种非常重要的设计模式,它们在实际项目中有着广泛的应用。本资源提供了一个关于这两种模式的实战示例,帮助我们更好地理解和应用它们。 适配器模式(Adapter Pattern)的主要目的是将两个...
### Java开发适配器模式详解 #### 一、适配器模式概述 适配器模式(Adapter Pattern)是一种常用的设计模式,其主要目的是让两个不兼容的接口能够协同工作。通过引入一个适配器,可以将现有类的接口转换成客户端期望...
Java适配器模式是一种设计模式,它允许不兼容的类之间进行通信,通过创建一个适配器类作为中间层,将原有接口转换成目标接口,从而实现旧代码与新需求的融合。在Java中,适配器模式有两种形式:类适配器模式和对象...