Spring依赖注入中的set方法注入
今天刚发现了一个问题,我当时都懵了,后来慢慢的捋顺了一点。是这样的:
我发现,Spring在用set方法注入时,只要求类中有set方法,而可以没有对应的属性,我当时人都傻了。
如果这个类是继承了父类属性的set方法,而它自己并没有这个属性呢?此种情况下是可以成功注入的。
啥?我给注入了,但是呢?他没有对应的属性,那我注入的内容去哪儿了呢?我要想用我注入的内容咋办呢?
相当于,我给你一个东西,但是你没有用一个容器来把这个东西接住,在你这儿找不到这个东西,但东西又确确实实给在你这儿?
那我注入的内容,不是凭空消失了吗?
后来我想通了一点,既然这个类是继承了父类属性的set方法,那么一定也继承了父类这个属性的get方法(如果父类有,并且可以被继承)
那么,就可以通过父类的get方法,来获取注入的内容,并且正常使用。
但是,还有一点困惑的是:那如果父类没有这个属性的get方法或者这个get方法不能被继承呢?
那岂不是我注入的内容,凭空消失了,或者说,是存在这个类中的,但是我看不到、摸不着,并且无法使用??
那这种注入有什么意义呢?Spring它不应该阻止这种注入吗?
(菜鸟一枚,刚接触框架,学java也没多久。若有问题,请大佬指正。
另外,代码和截图太麻烦了,不想搞,能懂我描述的意思就行)