访客模式在LePus3中描述,如下图所示。
此图表如何与访客模式的相应(Java)源代码相关?
图中的人工制品(客户,会员,行动,元素,聚合,访客,广场,三角等)如何在访客模式的源代码中体现出来?
答案 0 :(得分:1)
您可以使用Wikipedia中的代码示例,其中:
班级VisitorDemo
是客户端矩形。
类Wheel, Engine, Body, Car
是元素三角形,ICarElement
是其抽象父级,void accept(ICarElementVisitor visitor);
为接受(抽象访问者)椭圆。
类CarElementPrintVisitor, CarElementDoVisitor
同时 Ops 椭圆形和访客三角形
void visit(Wheel wheel);
void visit(Engine engine);
void visit(Body body);
void visit(Car car);
访问椭圆形。