得心应手的粘合剂。
将一个类的接口转换成客户期待的另外一个类的接口,适配器模式使得原本由于接口不兼容不能一起工作的类可以一起工作了。
一、参与者
Target:需要对接的目标接口
Client:使用Target接口的客户
Adaptee:已经存在的接口,与Target接口无法兼容
Adapter:适配Target接口和Adaptee接口的中间类
二、使用场景
1、你想使用一个已经存在的接口,但是他的接口不符合你的要求
2、你想创建一个可以复用的类,该类可以和其他不想关的类或不可预见的类一起工作
3、你想使用一些已经存在的子类,但是不可能对每一个都进行子类化以匹配他们的接口,适配器可以适配他的父类接口
三、已有应用
Spring AOP中org.springframework.aop.framework.adapter.AdvisorAdapter
这个接口有三个实现
org.springframework.aop.framework.adapter.MethodBeforeAdviceAdapter
org.springframework.aop.framework.adapter.ThrowsAdviceAdapter
org.springframework.aop.framework.adapter.AfterReturningAdviceAdapter
适配了什么就看这些适配器提供了什么功能:
supportsAdvice()方法提供一个校验是否支持Advice等能力,getInterceptor()方法提供一个从Advisor中提取MethodInterceptor的方法
public interface AdvisorAdapter {
boolean supportsAdvice(Advice advice);
MethodInterceptor getInterceptor(Advisor advisor);
}
本文深入探讨了适配器模式的原理与应用,讲解了如何通过适配器将不兼容的接口转换为所需形式,使不同类能够协同工作。特别介绍了SpringAOP中的AdvisorAdapter及其三种实现方式。

1554

被折叠的 条评论
为什么被折叠?



