设计模式_4_适配器模式(AdapterPattern, 多个功能的结合)

适配器模式(AdapterPattern, 结构型模式)

用最通俗的讲法就是: 将多个功能相关或不相关的接口( 你需要的接口 )放到同一个实现类里, 构造一个具有多工功能, 多特点的"异类对象"

  • 定义
    是作为多个接口之间的桥梁,结合多个独立的接口(将多个类/功能结合在一起,构建出一个可以产生需要的对象的适配器)

  • 角色关系
    多个独立的接口及其实现类, 适配器(实现这多个目标接口)

  • 优点
    可以让多个个没有关系的接口/类一起运行, 提高类的复用性, 增加类的灵活性

  • 缺点
    过多使用适配器造成系统凌乱, 例如:表面上使用A接口,适配器却将A改为B接口,造成接口使用的混乱, 因此如果不是有必要的, 可以不使用适配器, 而是直接对系统重构
    由于java单继承, 当适配类的时候, 只能适配一个类(为抽象类);

注: 适配器主要是用与解决正在服役的项目的问题, 不是在类详细设计的时候添加 (使用适配器, 构造出一个我们想要的对象, 解决燃眉之急)

  • 实现方式
    一般通过适配器继承或者以来已有对象, 实现想要的目标接口

代码演示:

例1

将播放MP4与VCL的播放器进行适配, 构建一个既能播放MP4, 又能放VCL的播放器

package com.AdapterPattern;
/**
 * 1、系统需要使用现有的类,而此类的接口不符合系统的需要。
 *  2、想要建立一个可以重复使用的类,用于与一
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值