工厂模式
定义:Define an interface for creating an object,but let subclasses decide which class to instantiate.Factiory Method lets a class defer instantiation to subclasses
(定义一个用于创建对象的借口,让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其子类。)
角色:
Product 为抽象产品类负责定义产品的共性,实现对事物最抽象的定义。
creator 为抽象创建类,也就是抽象工厂,具体如何创建产品类是由具体的实现工厂ConcreteCreator完成的。
具体工厂类代码如下:
public class ConcreteCreator extends Creator{
public <T extends Product>T createProduct(Class<T> c){
Product product =null;
try{
product = (Product)Class.forName(c.getName()).newInstance();
} catch (Exception e){
//异常处理
}