IOC与反射
反射 反射听起来高大上,其实就可以理解为:通过类的路径(就是个字符串)来new一个类: IOC 依赖注入,依赖注入的好处就是:如果你的程序中new一个类是需要动态new的,那么得到这个需要new的类的名称之后,就可以动态new出来。 我理解IOC就像工厂方法+反射动态生成对象。 举个例子: 假设有这些类 class food { } class apple extends food { void eat ( ) { System.out.println ( "apple" ) ; } } class banana extends food { void eat ( ) { System.out.println ( "banana" ) ; } } 我们程序中会动态生成今天吃的食物的名称是apple还是banana,如果是apple就要求返回一个apple对象,如果想吃banana就要求返回一个banana对象。为了应对这种需求,我们可以写出一个工厂类: class Factory { food getFood ( String name ) { if ( name.equals ( "apple" )) { return new apple ( ) ; } else if ( name.equals ( "banana" )) { return new banana ( ) ; }