gpt4 book ai didi

java - 设计模式 : Reduce duplicate code from 2 methods that is almost the same in java

转载 作者:行者123 更新时间:2023-11-29 03:52:56 24 4
gpt4 key购买 nike

我有几种类型的车辆,例如卡车、轿车、面包车、摩托车。它们之间的共同点是它们都会移动,因此我将其委托(delegate)给包含这些方法的移动类:

getSpeed()
setSpeed()
getDestination()
setDestination()
..
..
..
move()

有些车辆的移动方式与其他车辆不同,因此我为它制作了一个工厂设计模式。因此,如果它是汽车(卡车、轿车、面包车),它将委托(delegate)给 MoveCarImpl 类,或者如果它是摩托车,它将委托(delegate)给 MoveBikeImpl 类。我的问题是。自行车和汽车具有几乎完全相同的 move() 算法。唯一的区别是自行车算法在 move() 方法的末尾调用了 1 个附加方法,而汽车的 move() 算法则没有。所以现在我在 MoveCarImpl 类和 MoveBikeImpl 类中有很多重复的代码。关于如何处理这个问题的任何想法?

最佳答案

您可以使用自行车移动实现类扩展您的汽车移动实现类并覆盖移动方法。

关于java - 设计模式 : Reduce duplicate code from 2 methods that is almost the same in java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7871600/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com