gpt4 book ai didi

design-patterns - 策略模式如何运作?

转载 作者:行者123 更新时间:2023-12-03 05:36:30 25 4
gpt4 key购买 nike

它是如何工作的,它有什么用途以及何时应该使用它?

最佳答案

让我们简单地解释一下策略模式:

您有一个带有方法 run() 的类 Car(),因此您可以在伪语言中以这种方式使用它:

mycar = new Car()
mycar.run()

现在,您可能想在程序执行时动态更改 run() 行为。例如,您可能想要模拟电机故障或在视频游戏中使用“升压”按钮。

有多种方法可以进行此模拟:使用条件语句和标志变量是一种方法。策略模式是另一种:它将 run() 方法的行为委托(delegate)给另一个类:

Class Car()
{
this.motor = new Motor(this)

// passing "this" is important for the motor so it knows what it is running

method run()
{
this.motor.run()
}

method changeMotor(motor)
{
this.motor = motor
}

}

如果你想改变汽车的行为,你只需改变电机即可。 (在程序中比在现实生活中更容易,对吧?;-))

如果您有很多复杂的状态,这非常有用:您可以更轻松地更改和维护它们。

关于design-patterns - 策略模式如何运作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/91932/

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