Java设计模式之适配器模式的示例详解
1.什么是适配器模式
将一个类的接口转换成为客户希望的另外一个类的接口。适配器(Adapter)模式是的原本由于接口不兼容而不能在一起工作的类,可以一起工作。
比如,小米充电器,可以给小米手机充电,目前,想让苹果充电器给小米手机充电。如何完成,这时候需要一个适配器,将小米充电器和苹果充电器连在一起。
2.如何实现
1)目标接口,该接口是客户想要使用的接口(苹果充电器)
2)被适配者,是一个已经存在的接口或抽象类。(小米充电器)
3)适配器,是一个类,该类实现了目标接口,并包含被适配者的引用。
适配器的职责是对被适配者接口(抽象类)与目标接口进行适配
3.代码实现
1)目标接口
/** * 目标接口,苹果充电器 */ public interface AppleCharger { public void appleCharger(); }
2)被适配者
/** *被适配者,小米充电器 */ public interface MiCharger { public void miCharger(); }
3)小米手机使用小米充电器进行充电
/** *小米手机,实现小米充电器接口,可以充电 */ public class MiPhone implements MiCharger { @Override public void miCharger() { charging(); } public void charging(){ System.out.println("MiPhone charging....."); } }
4)适配器。需要调用苹果充电器的方法给小米手机充电。
该类实现了目标接口(AppleChager),并包含被适配者引用(MiCharger)
/** * 适配器, * 该类实现目标接口AppleCharge,并包含被适配者(MiCharger)的引用 */ public class AppleAdapter implements AppleCharger { MiCharger charge; public AppleAdapter(MiCharger b){ this.charge = b; } /** * 调用苹果充电器的方法 */ @Override public void appleCharger() { //给使用小米充电器的设备充电 charge.miCharger(); } }
5)测试类
public class TestMain { public static void main(String args []){ AppleAdapter adapter = new AppleAdapter(new MiPhone()); adapter.appleCharger();//调用苹果充电器,给小米手机充电 } }
到此这篇关于Java设计模式之适配器模式的示例详解的文章就介绍到这了,更多相关Java适配器模式内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Java NIO Selector用法详解【含多人聊天室实例】
这篇文章主要介绍了Java NIO Selector用法,结合实例形式分析了Java NIO Selector基本功能、原理与使用方法,并结合了多人聊天室实例加以详细说明,需要的朋友可以参考下2019-11-11解决springmvc使用@PathVariable路径匹配问题
这篇文章主要介绍了解决springmvc使用@PathVariable路径匹配问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2021-02-02RocketMQ Broker实现高可用高并发的消息中转服务
RocketMQ消息代理(Broker)是一种高可用、高并发的消息中转服务,能够接收并存储生产者发送的消息,并将消息发送给消费者。它具有多种消息存储模式和消息传递模式,支持水平扩展和故障转移等特性,可以为分布式应用提供可靠的消息传递服务2023-04-04SpringBoot基于SpringSecurity表单登录和权限验证的示例
这篇文章主要介绍了SpringBoot基于SpringSecurity表单登录和权限验证的示例。文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-09-09
最新评论