合肥seo网站建设,王也图片高清头像,北京工业产品设计公司,珠海网络营销推广0 引言
简单工厂模式#xff08;Simple Factory Pattern#xff09;#xff1a;定义一个工厂类#xff0c;它可以根据参数的不同返回不同类的实例#xff0c;被创建的实例通常都具有共同的父类。因为在简单工厂模式中用于创建实例的方法是静态#xff08;static#xf…0 引言
简单工厂模式Simple Factory Pattern定义一个工厂类它可以根据参数的不同返回不同类的实例被创建的实例通常都具有共同的父类。因为在简单工厂模式中用于创建实例的方法是静态static方法因此简单工厂模式又被称为静态工厂方法Static Factory Method模式它属于类创建型模式。
1 简单工厂模式代码
首先我们定义一个接口Animal
public interface Animal {void speak();
}然后我们创建两个实现了Animal接口的类Dog和Cat
public class Dog implements Animal {Overridepublic void speak() {System.out.println(Woof!);}
}public class Cat implements Animal {Overridepublic void speak() {System.out.println(Meow!);}
}接下来我们创建一个名为AnimalFactory的工厂类它可以根据传入的参数来创建并返回相应的动物对象
public class AnimalFactory {public Animal createAnimal(String type) {if (type null) {return null;}if (type.equalsIgnoreCase(DOG)) {return new Dog();} else if (type.equalsIgnoreCase(CAT)) {return new Cat();}return null;}
}
最后我们在main方法中使用AnimalFactory来创建动物对象并调用它们的speak方法
public class Main {public static void main(String[] args) {AnimalFactory factory new AnimalFactory();Animal dog factory.createAnimal(DOG);if (dog ! null) {dog.speak();}Animal cat factory.createAnimal(CAT);if (cat ! null) {cat.speak();}}
}