其实是封装了 I i = new B();也就是多态的体现,解决了A和B的强依赖性,也就是B遵循某一标准(即接口),而A直接将此接口注入(依赖)到程序中,编译是可以通过的,但是切记使用时需要有B来实现此接口,不然运行时会报错,例如各大数据库厂商的驱动程序,就是实现了sun 公司的JDBC接口,如果连接数据库时不添加jar包,运行程序时就会报驱动未找到的错误,其实就是没有找到接口的实现;
多态存在的三个必要条件
1、要有继承;
2、要有重写;
3、父类引用指向子类对象。
其实是封装了 I i = new B();也就是多态的体现,解决了A和B的强依赖性,也就是B遵循某一标准(即接口),而A直接将此接口注入(依赖)到程序中,编译是可以通过的,但是切记使用时需要有B来实现此接口,不然运行时会报错,例如各大数据库厂商的驱动程序,就是实现了sun 公司的JDBC接口,如果连接数据库时不添加jar包,运行程序时就会报驱动未找到的错误,其实就是没有找到接口的实现;
多态存在的三个必要条件
1、要有继承;
2、要有重写;
3、父类引用指向子类对象。
本文标题:DI注入:
本文链接:https://www.haomeiwen.com/subject/sseabttx.html
网友评论