【发布时间】:2019-08-02 20:40:12
【问题描述】:
我正在尝试在 java 中为具有不同返回类型(int 和 void)的方法的对象结构实现访问者模式(家庭练习,抱歉)。
一个concreteVisitor(即CostAss)返回int,第二个ConcreteVisitor(即drawCosts)返回void(即打印成本)。
我很难理解如何实现这个问题。我不允许在 Employee 接口中创建两个接受方法(一个 int e 一个 void)
【问题讨论】:
-
那张流程图是从哪里来的?除非更改参数,否则同一方法不能有两种不同的返回类型。
-
谢谢!这是我的问题。我不明白如何处理这种情况。在一个 ConcreteVisitor 中,我需要返回 int。在第二个 ConcreteVisitor 中,我需要打印值。
-
如果你能用 Java 解决这个问题。泛型
-
@vincenzopalazzo 我不允许在这个练习中使用泛型(教师心态)
-
@GianniSpear 尝试向您的老师解释他们分享的图表并不完全适合您(我猜是自愿)选择的语言。从网上找一张图(例如en.wikipedia.org/wiki/Visitor_pattern#Java_example),并实现它。你们都会从中受益。
标签: java visitor-pattern