5. 工厂方法模式
1.抽象产品类
public abstract class AbstractProduct {
}
2.抽象工厂类
public abstract class AbstractFactory {
public abstract AbstractProduct createProduct();
}
3.具体产品类
public class Product extends AbstractProduct {
}
4.具体工厂类
public class Factory extends AbstractFactory {
@Override
public AbstractProduct createProduct() {
// TODO Auto-generated method stub
return new Product();
}
}
5.客户程序
public class Client { //工厂方法,与抽象工厂的最主要区别可能就在此,单个对象的维度 public AbstractProduct getProduct(AbstractFactory factory){ return factory.createProduct(); } }
6.应用
public class App {
public static void main(String[] args) {
Client client=new Client();
AbstractProduct product = client.getProduct(new Factory());
}
}
本人倡导的讲解方式:代码示例[学以致用,不仅要知道理论,还要知道理论怎么付诸实践],
文字讲解[不仅知道要怎么用,还要知道是怎么回事],
画图讲解[有图有真相,用图的形式将代码嵌入到理论中,整体理解]

浙公网安备 33010602011771号