java 工厂设计模式
时间: 2023-11-20 10:56:30 浏览: 39
工厂设计模式是一种创建型设计模式,它提供了一种创建对象的最佳方式。在工厂模式中,我们创建对象而不将创建逻辑暴露给客户端,并使用一个通用接口引用新创建的对象。工厂模式包括三种类型:简单工厂模式、工厂方法模式和抽象工厂模式。
下面是Java中工厂方法模式的一个例子:
```java
// 创建一个接口
interface Animal {
void speak();
}
// 创建实现接口的类
class Dog implements Animal {
@Override
public void speak() {
System.out.println("The dog says: Bow Wow"); }
}
class Cat implements Animal {
@Override
public void speak() {
System.out.println("The cat says: Meow");
}
}
// 创建一个工厂类
class AnimalFactory {
public Animal getAnimal(String animalType) {
if (animalType == null) {
return null;
}
if (animalType.equalsIgnoreCase("DOG")) {
return new Dog();
} else if (animalType.equalsIgnoreCase("CAT")) {
return new Cat();
}
return null;
}
}
// 使用工厂类来获取对象
public class Main {
public static void main(String[] args) {
AnimalFactory animalFactory = new AnimalFactory();
Animal animal1 = animalFactory.getAnimal("DOG");
animal1.speak();
Animal animal2 = animalFactory.getAnimal("CAT");
animal2.speak();
}
}
```
输出结果为:
```
The dog says: Bow Wow
The cat says: Meow
```