gpt4 book ai didi

java - 父类中的 getter 和 setter

转载 作者:行者123 更新时间:2023-12-01 19:17:23 26 4
gpt4 key购买 nike

我有一个关于最佳实践的快速问题,以及 getter 和 setter 是否是特定情况下的最佳选择。这种情况是当我有类“A”实例化类“B”和“C”时。 A 类包含 B 类和 C 类访问的公共(public) getter 和 setter,因此数据是集中的。

这是最佳实践还是最好通过参数将数据传递给 B 类和 C 类?

谢谢

克里斯

最佳答案

我个人建议构建您的应用程序,以便传递 B 类和 C 类所需的所有数据。这将消除它们对 A 类的依赖,从而减少耦合和复杂性;例如:

public class A {
private var b : B;

public function A() {
b = new B();
b.someData = "some data that b requires";
}
}

然后,您可以通过称为Inversion of Control的过程从A类中删除B类的实例化来进一步改进这一点。 。这样你就可以使 B 类成为 A 类的依赖项。

public class A {
private var b : B;

public function A(b : B) {
this.b = b;
}
}

这允许外部客户端提前配置 B 实例,使您的项目结构对于以后的更改更加灵活:

public class Client {
public function Client() {
var b : B = new B();
b.someData = "The Client is now Configuring B";

var a : A = new A(b);
}
}

关于java - 父类中的 getter 和 setter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6028677/

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