郑州Java培训课程怎么样?适配器模式怎么回事?适配器,主要就是将原本不能或者不方便直接使用的东西,转换成可以直接或者方便使用的东西。GOF中有23中设计模式,今天的郑州Java学习教程就给大家讲解一下适配器模式。
Adapter Pattern,通常被翻译成适配器模式,有时候也叫做包装模式(wrapper pattern)。GOF中将适配器模式分为类适配器模式和对象适配器模式。
类适配器模式:这种适配器模式下,适配器继承自已实现的类(一般多重继承)。
对象适配器模式:在这种适配器模式中,适配器容纳一个它包裹的类的实例。在这种情况下,适配器调用被包裹对象的物理实体。
类适配器模式与对象适配器模式的区别仅在于适配器角色对于被适配角色的适配是通过继承还是组合来实现的,由于Java中不支持多继承,而且类适配器模式有破坏封装之嫌,而且我们也提倡多用组合少用继承。
适配器模式中的角色
1)目标接口(Target):客户所期待的接口。目标可以是具体的或抽象的类,也可以是接口。
2)需要适配的类(Adaptee):需要适配的类或适配者类。
3)适配器(Adapter):通过包装一个需要适配的对象,把原接口转换成目标接口。
适配器适用于那些场景?
1)系统需要使用现有的类,而此类的接口不符合系统的需要。
2)想要建立一个可以重复使用的类,用于与一些彼此之间没有太大关联的一些类,包括一些可能在将来引进的类一起工作,这些源类不一定有一致的接口。
3)通过接口转换,将一个类插入另一个类系中。
适配器的优缺点:
优点:
1)将目标类和适配者类解耦,通过引入一个适配器类来重用现有的适配者类,而无须修改原有代码。
2)增加了类的透明性和复用性,将具体的实现封装在适配者类中,对于客户端类来说是透明的,而且提高了适配者的复用性。
3)灵活性和扩展性都非常好,通过使用配置文件,可以很方便地更换适配器,也可以在不修改原有代码的基础上增加新的适配器类,完全符合“开闭原则”。
缺点:
1)过多地使用适配器,会让系统非常零乱,不易整体进行把握。比如明明看到调用的是A接口,其实内部被适配成了B接口的实现,一个系统如果太多出现这种情况,无异于一场灾难。因此如果不是很有必要,可以不使用适配器,而是直接对系统进行重构。
如果你想成为企业高薪竞聘的人才,一定要与时俱进更新知识体系。想要更好的学习Java,建议选择专业的学习方式,可以让你快速掌握企业所需的Java技术点。 |