设计模式之适配器模式
我们实际中会用到两个不同接口的类的通信,在不修改两个类的前提下,使用新的中间类来完成衔接的过程,这个中间件就是适配器.可以让两个完全不同的接口相互转化.
适配器模式允许在适配器中包装其他不兼容的对象,以使其与另一个类兼容。
就如同生活中买了港版的手机,但是附赠的是三脚插头,而大陆上用的是两脚的,需要一个适配器来将三角插头转换为两脚的。其中这个中间件就是适配器。
应用场景
- 当你想要这个类,但是类中的接口与想用的接口并不匹配
- 当想要去创建一个可重用的类,让它与不相关或不可预见的类合作,这个类不必要有兼容的接口
- 当你需要一系列的子类的时候,如果想要调整这些子类的接口方法的时候,对每一个接口子类化的这种方法是不可行的。这时就可使用适配器适配这些子类的夫类。
结构图
使用client调用适配器,适配器继承与三脚插头,依赖于二脚插头。这样就可以使用三脚插头的接口调用二脚插头的方法。
代码
1 | /** |
1 | 结果: |