欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

[读书笔记] Spring MVC 学习指南 -- 第一章

程序员文章站 2023-10-31 13:41:16
控制反转(Inversion of Control, IoC)/ 依赖注入: 比如说,类A依赖于类B,A需要调用B的某一个方法,那么在调用之前,类A必须先获得B的一个示例引用。 通常我们可以在A中写代码来直接创建对象B。依赖注入则会接管对象B的创建工作。 这样做的好处在于,如果B是一个接口,那么B就 ......

控制反转(inversion of control, ioc)/ 依赖注入:

比如说,类a依赖于类b,a需要调用b的某一个方法,那么在调用之前,类a必须先获得b的一个示例引用。

通常我们可以在a中写代码来直接创建对象b。依赖注入则会接管对象b的创建工作。

这样做的好处在于,如果b是一个接口,那么b就可能有多种实现。在a中直接创建一个实现,会降低其可重用性。

ioc把示例的创建从a的实现代码中分离出来,交由容器来完成,类a的实现就不需要关心b的具体实现,也使得a具有更高的可重用性。

public class a {
    private class b b;
    public void m1 {
        // b = new b();  对象的创建可以交由容器完成
        // 这样a只要调用类b的方法m2()就好了,不需要关心b b具体是什么
        b.m2(); 
    }      
}