1. 传统的工厂模式有 :工厂方法, 抽象工厂(一个抽象工厂,多个工厂实现)
工厂方法模式分为三种:普通工厂模式, 多个工厂方法模式, 静态工厂方法模式
普通工厂:就是在一个通过一个类的方法中去创建不同类的实例
工厂方法:就是,在一个类一个方法去创建一种类的实例,不同类的实例用多种方法去创建。
静态工厂就是方法做成静态的
这里主要结合泛型方法,结合登记式单例可实现实现一个类似Spring的大工厂。
用于对象与对象之间的解藕,降低各模块的依赖。
/**
* 泛型工厂实现 , 改善可把className写在properties文件中
* @author jiangwei
*
*/
public class BeanFactory {
public static <T> T getBean(Class<T> clazz, String className) {
try {
T t = (T) Class.forName(className);
return t;
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
return null;
}
}