工厂模式-静态工厂
1.产品类
1.1产品的统一接口
- /**
- * @Desc:产品的接口
- * @author zy
- * @date 2016年6月21日下午4:40:33
- */
- public interface Product {
- /**
- * @Desc:获取具体的产品
- * @author:zy
- * @version: 2016年6月21日 下午5:00:37
- */
- public void getDetailProduct();
- }
- public class A implements Product{
- @Override
- public void getDetailProduct() {
- System.out.println("get a product");
- }
- }
- public class B implements Product{
- @Override
- public void getDetailProduct() {
- System.out.println("get b product");
- }
- }
2.静态工厂方法
/**
* Description: 简单工厂的静态工厂(和简单工厂方法不同,是优化简单工厂方法,省去了传入参数,根据参数判断,参数可能会传入错误)
* @author zy
* @date 2016年6月21日下午4:18:38
*/
public class SimpleFactoryStatic {
/**
* @Desc:获取a实例
* @return:
* @author:zy
* @version: 2016年6月21日 下午5:25:50
*/
public static Product getA(){
return new A();
}
/**
* @Desc:获取b实例
* @return:
* @author:zy
* @version: 2016年6月21日 下午5:26:00
*/
public static Product getB(){
return new B();
}
}
3.测试
tips:
静态工厂,是工厂方法的改进。弥补了工厂方法模式,传入参数可能有误的问题,优化了工厂的生产调用