首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件开发 >

Visitor Design Pattern(访问者设计形式)

2012-08-24 
Visitor Design Pattern(访问者设计模式)?Visitor Design Pattern(访问者设计模式)实现要点:所有被访问的

Visitor Design Pattern(访问者设计模式)

?Visitor Design Pattern(访问者设计模式)实现要点:
所有被访问的对象必须继承一个带有accept(IVisitor)方法的接口;
被访问对象的accept方法的具体实现:visitor.visit(this), 把自己的对象暴露给visitor;
访问的对象通过实现IVisitor接口,对不同的被访问对象子类进行不同的操作。
?
好处:
1,分散在不同子类相同的功能被集中管理在一种Visitor类中,数据结构和操作分离。

2,避免使用大量的 instanceof 即可完成对各种子类的访问。

更多好处还没理解和发现。。。。。。 (思考中)

?

具体的例子(包含component design pattern)

VisitorDemo.java

?

?

更多阅读:

使用反射简化double dispatch的模拟:

?In the Java language, two techniques have been documented that use reflection to simplify the mechanics of double dispatch simulation in the visitor pattern: getting rid of accept() methods (the Walkabout variation), and getting rid of extra visit() methods.

?

?

参考:

http://en.wikipedia.org/wiki/Visitor_pattern

?

热点排行