设计模式之简单工厂模式(Simple Factory)
//同一接口 public interface IProduct { void sale(); }
//第一个实现类 public class Product1 implements IProduct { @Override public void sale() { System.out.println("This is Product1."); } }
//第二个实现类 public class Product2 implements IProduct { @Override public void sale() { System.out.println("This is Product2."); } }
//简单工厂类 public class ProductFactory { public IProduct createProduct(String className) { IProduct product=null; try { //利用Java反射机制 product=(IProduct)Class.forName(className).newInstance(); } catch(Exception e) { e.printStackTrace(); } return product; } }
//测试代码 public class Test { public static void main(String[] args) { ProductFactory factory=new ProductFactory(); IProduct product=null; product=factory.createProduct("Product1"); product.sale(); product=factory.createProduct("Product2"); product.sale(); } }
posted on 2013-10-30 21:01 Anonymous_ 阅读(145) 评论(0) 收藏 举报
浙公网安备 33010602011771号