gistfile1.txt 适配器模式(Adapter)就是把一个类的接口变换成客户端所期待的另一种接口,从而使原本接口不匹配而无法在一起工作的两个类能够在一起工作。举个例子来说,现在一般的
适配器模式(Adapter)就是把一个类的接口变换成客户端所期待的另一种接口,从而使原本接口不匹配而无法在一起工作的两个类能够在一起工作。 举个例子来说,现在一般的家用电器要求的电压都是 220V,但有个别电器要求使用110V 电压,怎么办? 这时就需要用一个能把 220V 电压转换成 110V 电压的变压器,这个变压器就是一个适配器。 哪些情况我们需要使用适配器模式呢? 1、系统需要使用的类的接口不符合系统的要求。 2、要建立一个可以重复使用的类,用于与该类之间关联不大的一些类,包括工作中引进的类。 3、类的适配器模式使用起来有点像多重继承机制,利用接口的特性,把一些零散类组织到一起,成为一个新的类来实现调用,并且看起来像是对一个类的操作。实际上,适配器模式更多的是强调对代码的组织,而不是功能的实现。 Java中适配器模式有什么作用呢? 适配器模式可以方便代码的组织与模型的准确表示,可以把一个类中的成员插到另一个类的继承子类中,从而让这个继承的子类看起来像一个新类,同时可以对父类减少依赖。 了解了适配器模式的相关概念以后,我们最关心的还是它的实现,具体的设计过程是怎样的呢? (1)定义适配器接口。代码如下: public interface IAdapter //适配器接口 { String Drive(); } (2)定义适配器类 Adapter,实现 IAdapter 接口。代码如下: public class Adapter implements IAdapter //适配器类 { public String Drive() { return "变压器"; } } (3)定义改变适配器类,该类主要实现将变压器的电压从 110V 改变为 220V。代码如下: public class ChangeAdapter //改变适配器类 { public String Web(String str) { return str; } } (4)定义输出电压为 110V 的变压器类。代码如下: public class CClass extends ChangeAdapter implements IAdapter //实现类适配器 { public String Drive() { return this.Web("(1)输出电压:110V"); } } (5)定义输出电压为 220V 的变压器类。代码如下: public class CObject implements IAdapter //实现对象适配器 { private ChangeAdapter changeAdapter; public CObject() { changeAdapter = new ChangeAdapter(); } public String Drive() { return changeAdapter.Web("(2)输出电压:220V"); } } (6)在 main()方法中使用变压器将 110V 的电压变压为 220V。代码如下: class Program { public static void main(String[] args) { IAdapter dap = new Adapter(); System.out.println((dap.Drive())); dap = new CClass(); //调用第一个适配器 System.out.println((dap.Drive())); dap = new CObject(); //调用第二个适配器 System.out.println((dap.Drive())); } } 以上就是Java适配器模式的作用和具体使用方法,大家遇到类似情况时,可以用上面的代码尝试实现适配器模式。最后希望小编的分享,对大家在Java编程中有帮助。