手记

设计模式面试必看之Adapter模式

我们平常设计和编码的时候,经常会想到设计模式,但是怎么把设计模式用好,是个难点,下面作者用一系列文章来讲解下设计模式的用法。本节讲解:Adapter模式

适用场景:

将两个不相关的类组合在一起使用,需要用到Adapter模式。一个是Adaptee,一个是Adapter。

实际上,两个不相关的类想要组合在一起使用,

可以修改类的接口, 但是,如果我们不想修改接口,或者根本没有源代码,就需要使用Adapter模式。

实现方法:

有两种方法,组合composition 和 继承inheritance。

实现举例:

  1. 有两个类 Square和Round,如果想要同时使用两个类,就可以新创建一个Adapter类:

上图可见,DrawAdapter继承Round, 同时在DrawAdapter类里面定义了变量square,和构造函数。通过初始化这个Adapter对象,就可以同时画圆和方形,因为DrawAdapter同时还重载了drawRound方法。

2. 如果想要两边继承:



上图说明,定义两个接口IRound 和ISquare,这样DrawAdapter就可以通过同时实现两个接口来将两个类组合起来使用。

同时在Adapter类里面定义两个构造函数,一个是Square,一个是Round。

以上,就是适配器Adapter模式。

4人推荐
随时随地看视频
慕课网APP