gpt4 book ai didi

java - ls 松散耦合可以通过任何其他方式来实现,而不是使用父类引用变量,通常不是专门在我的代码中?

转载 作者:行者123 更新时间:2023-12-01 07:55:52 24 4
gpt4 key购买 nike

Tight coupling is when a group of classes are highly dependent on one another.

class C {
A a;

C(B b) {
a = b;
}
}

Interface A {
}

class B implements A {
}

在我的代码中,我通过类 B 的引用而不是通过父接口(interface) A 接受类的对象。

  1. 我的代码是松散耦合还是紧密耦合?

    Loose coupling is achieved by means of a design that promotes single-responsibility and separation of concerns.

  2. 使用父类或接口(interface)的引用使代码更灵活地采用任何子类的对象,但它如何促进单一职责。

  3. 松散耦合是否可以通过任何其他方式来实现,而不是使用父类引用变量,在任何情况下都不是专门在我的代码中实现的?

最佳答案

这感觉像是家庭作业,但这是我的答案。

代码是紧密耦合的,因为 C 的构造函数取决于B而不是接口(interface)A 。如果你想解耦C来自B ,您将接受 A 的实例而不是B .

松耦合代码

class C {
A a;

C(A a) {
this.a = a;
}
}

关于java - ls 松散耦合可以通过任何其他方式来实现,而不是使用父类引用变量,通常不是专门在我的代码中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30213706/

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