工厂模式是我们最常用的实例化对象模式了,是用工厂方法代替new操作的一种模式。
创建接口类
public interface Animal {
    void sounds();
}实体类实现接口
public class Dog implements Animal {
    @Override
    public void sounds() {
        System.out.println("狗叫汪汪");
    }
}
public class Cat implements Animal {
    @Override
    public void sounds() {
        System.out.println("猫叫喵喵");
    }
}创建一个工厂类,根据传入的参数生成对应的对象
public class AnimalFactory {
    public Animal getAnimal(String animal) {
        if ("cat".equals(animal)) {
            return new Cat();
        }
        if ("dog".equals(animal)) {
            return new Dog();
        }
        return null;
    }
}测试类检验成果
public class FactoryPatternDemo {
    public static void main(String[] args) {
        AnimalFactory animalFactory = new AnimalFactory();
        Animal animal = animalFactory.getAnimal("cat");
        animal.sounds();
        Animal animal2 = animalFactory.getAnimal("dog");
        animal2.sounds();
    }
}输出结果
猫叫喵喵
狗叫汪汪