-
适配器作用查看全部
-
应用场景 在以下各种情况下使用适配器模式: 1.系统需要使用现有的类,而此类的接口不符合系统的需要. 2.想要建立一个可以重复使用的类,用于与一些彼此之间没有太大关联的一些类,包括一些可能在将来引进的类一起工作,这些源类不一定有很复杂的接口.查看全部
-
对象适配器模式 与类的适配器模式一样,对象的适配器模式把被适配的类的API转换成为目标类的API,与类的适配器模式不同的是,对象的适配器模式不是使用继承关系连接到Adaptee类,而是使用委派关系连接到Adaptee类. Target目标接口中同样只有Request()方法. Adaptee源接口中也只有SpecificRequest()方法,没有Request方法.而客户端则期待这个方法,为使客户端能够使用Adaptee类,需要提供一个包装(Wrapper)类Adapter.这个包装类包装了一个Adaptee的实例,从而此包装类能够把Adaptee的API与Target类的API衔接起来. Adapter与Adaptee是委派关系,这决定了适配器模式是对象的. 目标接口: public interface Target { //这是源类Adaptee没有的方法 public void Request(); } 源接口类: public class Adaptee{ public void SpecificRequest() { System.out.println("这是原始标准接口!(三相)"); } } 适配器类: public class Adapter implements Target{ private Adaptee adaptee; public Adapter(Adaptee adapt){ this.adaptee=adapt; } //实现Request()方法 public void Request() { adaptee.SpecificRequest(); } } 类适配器模式与对象适配器模式区别在于适配器类的行为不同. 类适配器模式的适配器类是继承源接口类,而对象适配器模式的适配器类是以委派的方式与源接口类进行关联.查看全部
-
类适配器模式:把被适配的类的API转换成为目标类的API 目标就像二相插座,源就像三相插座,适配器就是一个三相到两相的转换器. 假设Target目标接口中有Request()方法(相当于二相插座). Adaptee源接口中只有SpecificRquest()方法(相当于三相插座),没有Request()方法(即没有二相插座的插孔),而客户端则期待这个方法,为使客户端能够使用Adaptee类,提供一个中间环节,即类Adapter,把Adaptee的API与Target类的API衔接起来. Adapter与Adaptee是继承关系,这决定了这个适配器模式是类的. 目标接口: public interface Target { //这是源类Adaptee没有的方法 public void Request(); } 上面给出的是目标角色的源代码,这个角色是以一个JAVA接口的形式实现的.可以看出这个接口声明了Request()方法,而源角色Adaptee是一个具体类,它有一个SpecificRequest()方法,但是没有Request()方法. 源接口类: public class Adaptee{ public void SpecificRequest() { System.out.println("这是原始标准接口!(三相)"); } } 适配器类: public class Adapter extends Adaptee implements Target { //实现接口中的Request()方法,方法内部调用继承Adaptee中的SpecificRequest()方法. public void Request() { super.SpecificRequest(); } } 那么适配器Adapter就把被适配的类的API转换成为目标类的API.查看全部
-
适配器模式的用途: 笔记本电脑的插头一般都是三相的,即除了阳极、阴极外,还有一个地极.而有些地方的电源插座却只有两极,没有地极.电源插座与笔记本电脑的电源插头不匹配使得笔记本电脑无法使用,这时候一个三相到两相的转换器(适配器)就能解决此问题,而这正像是本模式所做的事情. 适配器模式的结构: 目标(Target)角色:这就是所期待得到的接口,由于这里讨论的是类适配器模式,因此目标不可以是类. 源(Adaptee)角色:被适配的接口(可以是接口或者类). 适配器(Adapter)角色:适配器类是本模式的核心,适配器把源接口转换成目标接口,显然这一角色不可以是接口,而必须是具体类. 适配器模式有类的适配器模式和对象的适配器模式两种不同的形式.查看全部
-
适配器模式 生活中的适配器定义:适配器就是一个接口转换器,如电源适配器、三角架基座转接部件、USB与串口的转接设备等. 适配器模式定义:适配器模式将一个类的接口,转换成客户期望的另外一个接口. 使得原本由于接口不兼容而不能一起工作的那些类可以在一起工作. 适配器模式由4个角色构成: 1.客户端(Client) 2.目标接口(Target) 3.源接口(Adaptee) 4.适配器(Adapter) 适配器作用就是将原本接口转换成用户需要的目标接口.查看全部
-
适配器模式查看全部
-
适配器的好处查看全部
-
适配器模式并不是一成不变的写法。 此图中,左边的抽象类就实现了客户端的目标接口,我们的适配器再去集成这个抽象类。 适配器还可以再去实现现有的Adaptee接口查看全部
-
继承的方式来实现适配器,手java单继承的限制,一旦继承了适配器,就无法再继承其他类。查看全部
-
适配器的分类。查看全部
-
Adapter适配器来实现目标接口,并把现有的Adaptee放入实现类中,把此实现类供客户端使用。查看全部
-
适配器模式中有4个角色:客户端、目标接口、适配器、被适配类。 客户端想要的接口是目标接口的样子; 被适配器类提供的是接口的另一种样子; 适配器在中间起到一个连接两者的作用,把被适配器类改造为目标接口的样子。查看全部
-
适配器模式为了解决不兼容和不匹配的问题。查看全部
-
hao查看全部
举报
0/150
提交
取消