工厂模式是一种常见的设计模式。请实现一个玩具工厂 ToyFactory 用来产生不同的玩具类。可以假设只有猫和狗两种玩具。
样例
ToyFactory tf = ToyFactory();
Toy toy = tf.getToy(‘Dog’);
toy.talk();
Wow
toy = tf.getToy(‘Cat’);
toy.talk();
Meow
interface Toy {
void talk();
}
class Dog implements Toy {
@Override
public void talk() {
System.out.println("Wow");
}
}
class Cat implements Toy {
@Override
public void talk() {
System.out.println("Meow");
}
}
public class ToyFactory {
public Toy getToy(String type) {
if (type.equals("Dog")) {
return new Dog();
} else if(type.equals("Cat")){
return new Cat();
}
return null;
}
}