工厂模式
工厂模式的定义
定义一个用于创建对象的接口,但是让子类决定将哪一个类实例化。工厂方法模式让一个类的实例化延迟到其子类。
工厂模式的结构
工厂模式的元素
- 抽象产品工厂
- 抽象产品
- 具体产品工厂
- 具体工厂
工厂模式的例子
水果工厂创建香蕉
//抽象水果工厂
public interface FruitFactory {
public Fruit createFruit();
}
//抽象水果产品
public abstract class Fruit {
}
//具体水果工厂
public class BananaFactory implements FruitFactory{
public Banana createFruit() {
return new Banana();
}
}
//具体水果产品
public class Banana extends Fruit{
Banana(){
System.out.println("创建香蕉!");
}
}
//客户端
public class client {
public static void main(String[] args) {
FruitFactory ff = new BananaFactory();
ff.createFruit();
}
}