标签:动态 针对 style 思考 new str www and turn
作者:anderson93
链接:https://www.zhihu.com/question/32108444/answer/121881566
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
class C{ J j = new J() ; }
class C{ J j = new J(10) ; }
一个特性需要修改浆构造方法,又需要修改船其中的new J()方法。这时候就设计者就思考,为什么我们加入一个特性需要更改两个类中代码(这也就是耦合度高)!
所以我们要解耦要依赖注入;
class C{ J j public c(J j){ this.j = j; }; }
Class Human { J j =new J(); J getJ(){ return j ; } }
Class C { J j ; Human h = new Human; j=Human.getJ(); }
本质也是第三方依赖注入,但是这个第三方可以脱离类。将对象依赖映射信息存储在容器一般为.xml 或者特定的对象中,并实现动态的注入。你需要我就给你哦。
为什么要有依赖注入(一种设计代码模式),因为我们要控制反转(设计代码的思路)。为什么控制反转。因为我们软件设计需要符合软件设计原则依赖倒置(设计代码原则),单一职责原则。标签:动态 针对 style 思考 new str www and turn
原文地址:https://www.cnblogs.com/feigao/p/8859136.html