玩转设计模式之Adapter

玩转设计模式之Adapter

 

设计模式很重要,地球人都知道。

Adapter,适配器或者叫转换器,这种模式主要用来将某一个类的接口转换成另外一个类的接口。其实现起来也很简单,就是新建一个类,让其实现所需要的接口,而其实现的过程是完全依赖于原需要被Adapt的类的。这和我们现实生活中的各类适配器非常类似,例如:电源适配器(将220伏转换成110伏)等等。

 

1.      实现方式

一般有两种实现方式:继承和实例成员。

让我们假设ClassA要被 AdaptInterfaceB,如下:

 

//ClassA

package sample;

 

public class ClassA {

      public void method1(){

           

      }

}

 

//InterfaceB

package sample;

 

public class InterfaceB {

      public void method2()

}

 

·        继承方式

实际上就是通过集成ClassA,然后再加上新的接口方法。

 

//ClassC

package sample;

 

public class ClassC extends ClassA implements InterfaceB{

      public void method2(){

            //......

              //通过继承的方法访问ClassA中的原有方法

            //......

      }

}

 

·        实例成员方式

实际上就是在新的类中创建一个ClassA的实例,再加上新的接口方法。

 

//ClassC

package sample;

 

public class ClassC implements InterfaceB{

      private ClassA instanceA = new ClassA();

     

      public void method2(){

            //......

              //通过instanceA调用ClassA中的原有方法

            //......

      }

}

 

2.      应用场景

当你有两个不同的类,其实现方法(接口)不一致,而你又想通过统一的方式来操作这两个类,而且也不想改变这两个类的原有实现方式,这时,你就需要使用Adapter模式了。一般情况下,是将某个特殊的类Adapt成标准的类。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值