关于解耦合的简单理解
Class A 和Class B
A类中要用到B类对象,如果直接
Class A
{
Class B b;
}
是紧耦合的。如何解耦?
将B从接口BI实现
class B inplement IB
{
...
}
Class A
{
IB b;
A(IB bi)
{
this.b=bi;
}
}
生成A对象时,A a=new A(new B())此时传入的只要是实现了接口IB的对象即可,不一定要是Class B。如果BB也实现了IB接口,同样是可以构造A对象的,此时A和B之间就不再是紧耦合的。