天天看点

Java之控制反转和依赖注入Java之控制反转和依赖注入

1.简介

依赖注入和控制反转,目的是为了使类与类之间解耦合,提高系统的可扩展性和可维护性,下面通过一个例子来引入这一概念。

2.案例

1)一般情况下的类耦合

Main.java

Java之控制反转和依赖注入Java之控制反转和依赖注入
Java之控制反转和依赖注入Java之控制反转和依赖注入

通过上面代码可以看出:Main类与Chinese类和American类之间存在着强耦合 , Chinese和American类和方法修改时,此处的类和方法也需要修改。不容易扩展和维护。

2)工厂方法来解耦合

Java之控制反转和依赖注入Java之控制反转和依赖注入
Java之控制反转和依赖注入Java之控制反转和依赖注入

通过上面代码可以看出:Main类与类Chinese和American不再耦合,仅仅和其接口Human耦合,修改时还需要修改在Main类中修改这些字符串,当类和方法修改时,只有方法需要修改。这一定程度上降低了Main类和Chinese、American类的耦合

3)依赖注入和控制反转

Java之控制反转和依赖注入Java之控制反转和依赖注入
Java之控制反转和依赖注入Java之控制反转和依赖注入