问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

对依赖注入的构造子注入的理解3

发布网友 发布时间:2023-11-19 08:29

我来回答

2个回答

热心网友 时间:2024-01-09 00:06

其实所谓的依赖注入不是你去调用他的构造方法,而是容器去调用。比如spring容器。

他的原理是,在spring的配置文件中,你可以配置注入的对象(一般来讲需要注入的对象定义的时候用接口定义),然后是 通过容器去得到此对象 ,在你的例子中,就是通过容器得到DIByConstructor,而不是你自己去构造。

所以当你需要注入的对象更换的时候,只需要更改配置文件,就可以注入不同的对象,因为你始终是通过容器得到对象,所以这部分代码也不需要改变,因此耦合就非常低了,因为所有过程中,你只需要更改注入对象的实现以及更改配置文件。

其实你应该结合实际去试试看到底怎么用的,就会非常清楚了。你给的例子什么问题也不能说明,必须将整个代码理解才行。

热心网友 时间:2024-01-09 00:06

依赖关系在构造时由容器一次性设定。因此组件在被创建之后即处于相对“不变”的稳定状态,无须担心上层代码在调用过程中执行setter方法对组件依赖关系产生破坏,特别是对于Singleton模式的组件而言,这可能对整个系统产生重大的影响。

同样,由于关联关系尽在构造函数中表达,只有组件创建者需要关心组件内部的依赖关系,对调用者而言,组件中的依赖关系出于黑盒之中,对上层屏蔽不必要的信息,也为系统的层次清晰性提供了保证。

通过构造子注入,意味着我们可以在构造函数中决定依赖关系的注入顺序,对于一个大量以来外部服务的组件而言,依赖关系的获得顺序可能非常重要,比如某个依赖关系注入的先决条件是组件的DataSource及相关资源已经被设定。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
怎么描写小猫呢? 什么梦预示正缘要出现 壳外电场分布为什么与壳内电荷的位置无关啊 为什么带电球壳的内部场强处处为零? 电荷内或外感应球壳,球壳内部场强是否处处为零 win11回收站图标隐藏方法-win11回收站怎么隐藏 Windows 11回收站不见了怎么办_如何在Windows 11中恢复回收站图标 Win11回收站图标显示方法 win11显示回收站的方法_win11怎么显示回收站 华为荣耀5X评价,缺点,参数 制作滴管时应该注意什么 QQ华夏100以后在哪弄7D8D装备啊, 全球公爵加油怎么用 如何设置手机接入点301 oppor7s怎么修改手机接入口 怎么可以运行到:HKEY_CURRENT_USER\Software\Microsoft\Windows\C... 我总觉得身边的人在耍我,我这是有病吗? 怎么改成现在的手机号 合肥安琪儿产检可以做糖耐吗? 人生性多疑是一种怎样的体验? 一个网游小说,里面主角游戏名叫杀猪刀26 CBB61电容用万能表检测是1.57是好的还是坏的!!! 联通短信接入口怎么设置? HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run... 哪些流行歌曲的歌词与古文内容相近 如何把改成手机号码? 门口摇椅警示语是什么 电信手机接入口怎样设置信号最强 中国现在还有哪些复姓655 中国现在还有哪些复姓?955 删掉了微信好友,但是又不知道和手机号,怎么加回? 准备的准的组词是什么25 一年改2次的办法 是不是网络设置里面的接入点选的是什么手机里的所有用到上网的软... 水洗厂加的柔软剂是什么? 求钢铁侠3的百度云网盘高清中英文字幕,谢谢!!! 暑假哪里有小孩子学英语的地方啊,汉阳这边。孩子7岁了,还没学过英语... 上海交通大学自动化和信息工程怎么选 上海交大电院大二依据什么选系 杜高犬是不是都有海盗脸 美的洗衣机MB4501插了插头怎么没反应?哪里出了问题了? 为什么我的微博不显示点赞的内容 我的红米4手机桌面图标变得很大,一页只能摆4个图标,找几个同...7 请问佛山市区那里能买到公交卡?非常感谢! 谈谈当代大学生如何在新时代中国特色社会主义伟大征程中放飞青春... 一个号码注册了两个,怎么找回第一个? 没有欠条证据怎么办? 人家借我钱不还,没有欠条,也没有证据怎么办?4 办理全球公爵需要多少钱? 海盗敢打劫军舰航母吗?17