Java 在什么情况下,松耦合和紧耦合将被用作真实场景?
我一直在读这篇文章: 读了这篇文章后,我仍然感到困惑,完全不理解它。我是Java初学者Java 在什么情况下,松耦合和紧耦合将被用作真实场景?,java,Java,我一直在读这篇文章: 读了这篇文章后,我仍然感到困惑,完全不理解它。我是Java初学者 耦合在Java中的重要性是什么?为什么?设计代码时需要在何处、如何以及何时使用它?紧密耦合:- 在java中创建复杂应用程序时,一个类的逻辑将调用另一个类的逻辑,以向客户端提供相同的服务 如果一个类调用另一个类逻辑,则称为协作 当一个类与另一个类协作时,两个类之间存在紧密耦合 如果一个类想要调用第二个类的逻辑,那么第一个类需要第二个类的对象,这意味着第一个类创建第二个类的对象 例如,若我们有两个类称为Tra
耦合在Java中的重要性是什么?为什么?设计代码时需要在何处、如何以及何时使用它?紧密耦合:-
- 在上面的示例中,Traveler对象与car紧密耦合 对象,因为如果要使用“自行车”对象,请使用原地车对象 然后,我们需要改变旅行者的等级
- 在上面的traveler类中,一个外部实体注入任何一辆车 (或)自行车物体
- 在traveler中,这些不需要更改,我们正在改变 从汽车到自行车
- 在上述旅行者类别中,我们是代币车辆参考,因此 外部对象(容器)可以注入汽车对象(或) 自行车对象,取决于旅行者的要求
- 在spring框架中,spring容器遵循依赖项注入 机制,并注入主 反对
- 弹簧架之所以获得如此大的成功,主要原因之一是 它促进了对象之间的松散耦合
- 在复杂的情况下,一个类的逻辑将调用另一个类的逻辑来提供相同的服务
- 如果发生这种情况,则两个类之间存在所谓的紧密耦合
- 在这种情况下,想要从第二个类调用逻辑的第一个类必须从第二个类创建一个对象
traveler
,第二类是car
Traveler
class调用car
class的逻辑;在本例中,Traveler类创建了car类的对象
这意味着汽车
类别将取决于旅行者
对象。
Public class Traveller {
Car c = new Car();
Public void startJourney() {
c.move();
}
}
Public class Car {
Public void move(){
...
}
}
这里的旅行者
对象与汽车
对象紧密耦合。如果
旅行者
想要从汽车
更改为飞机
,则整个旅行者
等级必须更改如下:
Public class Traveller {
Plane p = new Plane();
Public void startJourney() {
p.move();
}
}
Public class Plane {
Public void move(){
...
}
}
松耦合
- 我们的主要对象,
在本例中,将允许外部实体,即所谓的Traveler
提供容器
。因此,对象
不必从Traveler
或car
对象创建自己的类,它将从plane
容器中获取该类
- 当对象允许依赖项注入机制时
- 外部实体,
可以基于特定逻辑注入容器
或汽车
对象,这是平面
的要求旅行者
Public class Traveller {
Vehicle v;
Public void setV(Vehicle v) {
this.V = V;
}
Public void startJourney() {
V.move();
}
}
在这里,Traveler
类注入一个car
或一个plane
对象。如果我们想将依赖项从汽车更改为飞机,则无需更改Traveler类
Traveler
类获取了一个车辆引用,因此外部对象(容器)可以注入car
对象或plane
对象,这取决于Traveler
的要求尝试通过耦合自己来解释您理解的内容,我们会告诉您这是否是一个错误的假设;-)@Darwind紧耦合意味着更多的依赖性。多个类相互依赖。松散耦合意味着依赖性更小,因此类不需要相互依赖。对不起,如果我告诉你任何错误的事情是的,现在我明白了。谢谢“这意味着汽车类别将取决于Traveler对象”。我认为这是不对的。依赖于汽车的是旅行者对象。这是一个很好的例子。