【发布时间】:2017-11-24 03:42:49
【问题描述】:
如果我们有一个父类 Vehicle 和它的子类 Bus、BiCycle、MotorBike。
在服务类的某个时间点,我将获取所有对象,例如列出车辆。
我的业务逻辑应该如下所示, 将收到故障车辆列表,并为每种车辆类型分配相应的机械师。
如果我收到一辆自行车,它应该交给自行车修理工或其他车辆及其各自的修理工。
当我使用切换大小写和 if else 条件时看起来很糟糕。所以我尝试使用访问者模式和工厂模式,工厂模式也将使用 switch 或 if-else 条件来动态获取对象并调用覆盖方法。当前使用访问者模式。
请提出一些更适合这种情况的方法。
【问题讨论】:
-
听起来你应该定义一个额外的接口有goToMechanic,它将由自行车和车辆实现......
-
访客模式很好。如果你方没有实际反对意见,本案可以结案。
标签: java object design-patterns dynamic java-8