案例:
这种子类注入了同样的对象时。子类的set方法将父类的重写了,导致父类的userService注入失败。 父类种若有使用注入对象的地方就会抛npe。
解决方法很简单,基类的注入对象userService改为 protected,子类能直接访问;或给基类的注入对象userService增加get方法。不过这样难免会有开发会疏忽,在写子类时不关心父类的具体方法和属性,导致类似的问题再发生。
根本解决方法是,将所有ioc下基类的bean注入的set方法加上final,即可再正常开发时将问题提前暴露出来