简单工厂模式是由一个工厂对象决定创建出哪一种产品实例的方式。
在创建一个对象时不向客户暴露内部细节,并提供一个创建对象的通用接口。
- 创建一个产品通用接口,不向用户暴露细节
- 实例化操作放在一个简单的工厂类中
public interface Product {
public void msg();
}
public class Product1 implements Product {
public void msg() {
System.out.println("我是Product1 ");
}
}
public class Product2 implements Product {
public void msg() {
System.out.println("我是Product2 ");
}
}
public class Product3 implements Product {
public void msg() {
System.out.println("我是Product3 ");
}
}
public class SimpleFactory {
public Product createProduct(int type) {
if (type == 2) {
return new Product2();
} else if (type == 3) {
return new Product3();
}
// Product1 当做默认产品
return new Product1();
}
}
public class Client {
public static void main(String[] args) {
SimpleFactory simpleFactory = new SimpleFactory();
Product product = simpleFactory.createProduct(2);
product.msg();
}
}
结果:
我是Product2
评论