接纳访问
场景
数据比较固定,多种访问者有不同的操作数据的方法
稳定数据和不稳定数据解耦合
代码
实现
1 | interface Visitable { |
使用
1 | DataCenter center = new DataCentor(); |
特征
被访问对象接受访问者
访问者定义如何访问
优缺点
- 避免了类型判断
- 每个可访问的对象类型都对应一个接口方法,类型种类必须少而且固定
- 访问者直接使用了具体实现类型,因此必须强调稳定
应用
javax.lang.model.element.Element
javax.lang.model.element.ElementVisitor
一分也是爱~
版权声明
This site by Linest is licensed under a Creative Commons BY-NC-ND 4.0 International License.
由Linest创作并维护的博客采用创作共用保留署名-非商业-禁止演绎4.0国际许可证。
本文永久链接:http://linest.github.io/2016/11/30/java-pattern-visitor/