gpt4 book ai didi

dart - 使用 getter 和 setter

转载 作者:行者123 更新时间:2023-12-03 04:17:01 24 4
gpt4 key购买 nike

建议在 dart getter 和 setter 中使用来定义如下属性:

class Car {
Engine engine;

bool get isEngineRunning => engine.isRunning;

void set isEngineRunning(bool isRunning) {
engine.isRunning = isRunning;
}
}

它有什么好处?

最佳答案

仅当它是必需的,因为您想要执行一些额外的代码,除了转发到一个字段。

如果 getter 和 setter 仅用于包装字段,则明确不鼓励使用 getter/setter,因为它们只是多余的。

在您的情况下,因为您没有转发到字段 _isEngineRunning不想暴露也没关系Engine engine .

但是因为 engine是公开的,它可能只是太多的噪音和困惑,因为同一件事可以通过两种不同的方式完成。

如果 engine将是私有(private)的,最好考虑https://en.wikipedia.org/wiki/Law_of_Demeter

关于dart - 使用 getter 和 setter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40530293/

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