未来_我来
因为渴望改变,所以必须努力

工厂模式的思想主要为:多个类似的子类继承同一个父类,对其父类中的变量进行操作;工厂类负责判断、控制哪个子类被执行,而工厂类调用子类完成后,返回的结果是该子类的父类,该父类中的变量已经被操作过了,访问该父类,得到我们想要的结果。

public class Father{                   //父类
 protected static String one;
 protected static String two;
}

public class Son1 extends Father{      //子类
 Son1(){
  one = "son1";                        //操作父类中的变量
 } 
}

public class Son2 extends Father{     //子类
 Son2(){
  two = "son2";
 } 
}

public class Factory {  //工厂类
 public Father getSon(String s) {      //调用子类,返回父类
  if (s.equals("1")) {
   return new Son1();
  } else {
   return new Son1();
  }
 }
}

调用方法举例

    Factory factory  = new Factory();

    Father father = factory.getSon("1");  //调用时不需要判断调用哪个子类,参数不同,工厂自动判断调用的子类。本例调用了Son1子类

    System.out.println(father.one);  //查看结果

    System.out.println(father.two);

 

工厂类中的创建子类的方法亦可放在父类中实现。

posted on 2017-12-19 15:06  未来_我来  阅读(204)  评论(0编辑  收藏  举报

2 3
4