一个IOC(控制反转)和DI(依赖注入)的练习程序,实际上和Highway-Toll-Framework的实现基本类似。
\---IOC-Exercise
Agent.java
Person.java
Vehicle.java
VehicleType.java
Agent.java
提供findVehicleClasses方法,扫描包中的类,返回class列表。提供getVehicle方法,创建所给名称对应的车辆类,返回相应实例。
Person.java
这个程序的主类,在里面通过Agent类来获取所需的具体对象,在通过setVehicle方法注入到Person类中,从而调用不同类的同名方法。
Vehicle.java
接口,所有车辆类实现该接口,再在车辆类上打注解便可以不侵入原有代码增加新类。
VehicleType.java
注解类,存储了类的名称值,一个类对应多个名称。