工厂方法模式(Factory Method),定义一个创建对象的接口,让子类决定实例化哪一个类。工厂方法使一个类的实列化延迟到其子类。
示意图代码如下:1 public abstract class Product {
2 public abstract void show();
3 }
Product
1 public class ConcreteProduct extends Product {
2
3 @Override
4 public void show() {
5 System.out.println("ConcreteProduct...show....");
6
7 }
8
9 }
ConcreteProduct
1 public abstract class Creator {
2 public abstract Product factoryMethod();
3 }
Creator
1 public class ConcreteCreator extends Creator {
2
3 @Override
4 public ConcreteProduct factoryMethod() {
5 return new ConcreteProduct();
6
7 }
8
9 }
ConcreteCreator
1 public class TestFactory {
2 public static void main(String[] args) {
3 Creator c = new ConcreteCreator();
4 ConcreteProduct pro = (ConcreteProduct) c.factoryMethod();
5 pro.show();
6 }
7 }
test