本文共 480 字,大约阅读时间需要 1 分钟。
一个类的成员变量和这个类实现了一个同一的接口(拥有成员变量的所有功能,同时还扩展了新的功能)
看了下 mybatis的源码,里面有用到装饰模式,特地记一下,以后慢慢研究public class CachingExecutor implements Executor { private final Executor delegate; private final TransactionalCacheManager tcm = new TransactionalCacheManager(); public CachingExecutor(Executor delegate) { this.delegate = delegate; delegate.setExecutorWrapper(this) }.......}
传入的 delegate 这个类已经是 实现了 Executor接口,但是有CachingExecutor 也实现了同样的接口,也就好像是 把 delegate 包装了一样,其实 得到的新的类还是 Executor
转载地址:http://exuzi.baihongyu.com/