IOC的通俗理解

Spring 有 IOC和AOP两种思想
IOC:概念 在网上看了一堆文章 都是一些说的比较官方 有点难理解
看下面这个图 :
在这里插入图片描述
是不是类很多
看的有点头疼 原生的Servlet就是这样的 项目小的话还可以 但是如果多了呢?
在IOC之前写 Servlet 是不是每个功能都需要new同一类很多次呢 每一次实现一个功能 都需要new一下 有可能不止一次 那么这些对象每一次都是一个新的对象 对内存的占用想想是不是有点浪费了。然后 后期想再原有的基础上加一个功能 每一个类都需要去修改一下 。很费力。而Java是高内聚 低耦合的设计理念
这个时候 IOC(容器)可以叫工厂 将对象私有类 配置在XML中 调用的时候申请一下就行了 这一点就是依赖注入
请看一下的图:
在这里插入图片描述
这个时候看图是不是有点清晰了呢,把类都放在一个容器里 ,需要用谁申请一下 ,让谁转动 就行了 。不想在之前一样每一次都要new了, 相当于在容器了就new了 但是这里呢 ! 是一次调用 多次使用 每一次使用的都是同一个对象 ,而不是像之前, 每一次调用是重新创建一个对象了 。这样就降低了耦合度了。
控制反转 :第一个图,在new B类之前呢 需要先创建一下A类才可以用B类
主要在:代码催生代码 用几次创建几次 多例对象
而注入到容器呢用谁写谁 创建一次 调用多次, 单例对象 这样是不是主动权就在你手里呢

图是截别人的~~~~~~~

如果有其他不同意见和一些需要改进的地方请在评论写出!
  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值