Java 工厂设计模式

//使用new关键字创建对象的缺点是耦合度太高,工厂设计模式利用Java的反射机制来实例化对象降低了这种耦合度

package
cn.buaa; import java.util.Date; interface Fruit{  public void eat(); } class Apple implements Fruit{  @Override  public void eat() {   System.out.println("吃苹果");     } } class Orange implements Fruit{  @Override  public void eat() {   System.out.println("吃橘子");  } } class Factory{  public static Fruit getInstance(String className){   Fruit f = null;   try{    Class<?> cla = Class.forName(className);    f = (Fruit)cla.newInstance();   }catch(Exception e){    e.printStackTrace();   }   return f;     } } public class Hello {  public static void main(String[] args) throws Exception {   Fruit f = Factory.getInstance("cn.buaa.Orange");   f.eat();     } }      

 

posted @ 2017-02-18 18:53  StanLong  阅读(148)  评论(0编辑  收藏  举报