简单工厂模式的概念
简单工厂模式是属于创建型模式,又叫做静态工厂方法(Static Factory Method)模式,但不属于23种GOF设计模式之一。简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。简单工厂模式是工厂模式家族中最简单实用的模式,可以理解为是不同工厂模式的一个特殊实现。
简单工厂模式的UML图:
代码实现:
public interface Animal {
void eat();
}
public class Cat implements Animal {
@Override
public void eat() {
System.out.println("猫吃鱼");
}
}
public class Dogimplements Animal {
@Override
public void eat() {
System.out.println("狗吃骨头");
}
}
public class SampleFactory {
public static Animal createAnimal(String type) {
if (type.equals("Cat")) {
return new Cat();
}else if (type.equals("Dog")) {
return new Dog();
}
return null;
}
}
public class Client {
public static void main(String[] args) {
Animal cat = SampleFactory.createAnimal("Cat");
cat.eat();
Animal dog = SampleFactory.createAnimal("Dog");
dog.eat();
}
}