【设计模式】(六)–创建型模式–工厂模式2工厂方法模式
工厂方法模式的简单实现
类图
实现
public interface Fruit {
void showTaste();
}
public class Apple implements Fruit {
@Override
public void showTaste() {
System.out.println("苹果味道脆、甜");
}
public Apple() {
this.showTaste();
}
}
public class Orange implements Fruit {
@Override
public void showTaste() {
System.out.println("橙子味道酸、甜");
}
public Orange() {
this.showTaste();
}
}
public interface FruitFactory {
Fruit createFruit();
}
public class AppleFactoryImpl implements FruitFactory {
@Override
public Fruit createFruit() {
return new Apple();
}
}
public class OrangeFactoryImpl implements FruitFactory {
@Override
public Fruit createFruit() {
return new Orange();
}
}
public class Client {
public static void main(String[] args) {
FruitFactory appleFactory = new AppleFactoryImpl();
FruitFactory orangeFacroty = new OrangeFactoryImpl();
Fruit apple = appleFactory.createFruit();
Fruit orange = orangeFacroty.createFruit();
}
}