Spring依赖注入中的set方法注入


今天刚发现了一个问题,我当时都懵了,后来慢慢的捋顺了一点。是这样的:

我发现,Spring在用set方法注入时,只要求类中有set方法,而可以没有对应的属性,我当时人都傻了。

如果这个类是继承了父类属性的set方法,而它自己并没有这个属性呢?此种情况下是可以成功注入的。

啥?我给注入了,但是呢?他没有对应的属性,那我注入的内容去哪儿了呢?我要想用我注入的内容咋办呢?

相当于,我给你一个东西,但是你没有用一个容器来把这个东西接住,在你这儿找不到这个东西,但东西又确确实实给在你这儿?

那我注入的内容,不是凭空消失了吗?

 

后来我想通了一点,既然这个类是继承了父类属性的set方法,那么一定也继承了父类这个属性的get方法(如果父类有,并且可以被继承)

那么,就可以通过父类的get方法,来获取注入的内容,并且正常使用。

 

但是,还有一点困惑的是:那如果父类没有这个属性的get方法或者这个get方法不能被继承呢?

那岂不是我注入的内容,凭空消失了,或者说,是存在这个类中的,但是我看不到、摸不着,并且无法使用??

那这种注入有什么意义呢?Spring它不应该阻止这种注入吗?

 

(菜鸟一枚,刚接触框架,学java也没多久。若有问题,请大佬指正。

另外,代码和截图太麻烦了,不想搞,能懂我描述的意思就行)

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM