Spring学习笔记——IOC、依赖注入DI和Spring作用浅析

1.依赖注入DI

1.1 什么是DI

简单来说,就是在如果在一个对象主体中要使用另一个对象,为了实现松耦合,通过传递被使用对象的引用到该对象主体,来实现对该对象的使用。
举个简单的例子:

代码1.1.1

class Engine{
	public void start(){}
}
class Car{
	public void run(Engine engine){engine.start()}
}

1.2 为什么要DI

很明显的一点是为了实现松耦合,提高可复用性
正如上面的例子。如果不通过DI,那么需要在Car对象中new一个Engine对象。

代码1.2.1

class Engine{
	public void start(){}
}
class Car{
	private Engine engine = new Engine();
	public void run(){engine.start()}
}

而上面这种方式,无疑使得Car对象,变得臃肿了,主要是使得Car和Engine紧耦合在了一起,如果以后,想对Engine进行扩展,势必Car也得被迫进行重构。
比如说,有了几种可供选的Engine装置,则需要重构Engine,而使Engine能够满足这种多态,则需要重构Engine为一个Interface,如下。
代码1.2.2

Interface Engine{
	public void start();
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值