最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java設(shè)計(jì)模式之簡(jiǎn)單工廠模式

 更新時(shí)間:2016年12月08日 17:05:41   作者:jiayayao  
這篇文章主要為大家詳細(xì)介紹了java設(shè)計(jì)模式之簡(jiǎn)單工廠模式,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

在編寫一個(gè)計(jì)算器程序時(shí),可以將業(yè)務(wù)邏輯和顯示分離,業(yè)務(wù)邏輯封裝為一個(gè)類(封裝);如果要新添加一種運(yùn)算,可以先創(chuàng)建一個(gè)Operation的基類,然后各種運(yùn)算從Operation類繼承,并實(shí)現(xiàn)GetResult()虛函數(shù),這時(shí)添加新的運(yùn)算只需要派生一個(gè)新的類,即不需要之前的運(yùn)算參與編譯。如何讓計(jì)算器知道我是希望使用哪種運(yùn)算呢?應(yīng)該考慮單獨(dú)的類來做這個(gè)創(chuàng)造實(shí)例的過程,這就是工廠。創(chuàng)建一個(gè)OperationFactory類,傳入?yún)?shù),函數(shù)createOperate就可以實(shí)例化出合適的對(duì)象。

Java代碼如下:

public class OperationFactory {
 public static abstract class Operation
 {  
  private double _numberA = 0;
  private double _numberB = 0;
  
  public double get_numberA() {
   return _numberA;
  }

  public void set_numberA(double _numberA) {
   this._numberA = _numberA;
  }

  public double get_numberB() {
   return _numberB;
  }

  public void set_numberB(double _numberB) {
   this._numberB = _numberB;
  }
  
  abstract double GetResult();
  // TODO Auto-generated constructor stub
 }
 
 public static class OperationAdd extends Operation
 {
  double GetResult() 
  {
   double result = get_numberA() + get_numberB();
   return result;
  }  
 }
 
 public static class OperationSub extends Operation
 {
  double GetResult() {
   double result = get_numberA() - get_numberB();
   return result; 
  }
 }
 
 
 public static Operation createOperate(String operate){
  Operation oper = null;
  if (operate.equals("+")) {
   oper = new OperationAdd();
  }
  else if (operate.equals("-")) {
   oper = new OperationSub();
  }

  return oper;
 }

 public static void main(String[] args) {
  Operation oper;
  oper = OperationFactory.createOperate("+");
  oper.set_numberA(1);
  oper.set_numberB(2);
  double result = oper.GetResult();
 }
}

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論

绥化市| 嘉祥县| 南丹县| 齐齐哈尔市| 怀柔区| 安岳县| 清水河县| 民丰县| 隆安县| 黑龙江省| 石渠县| 泰兴市| 略阳县| 黔南| 仙游县| 太和县| 灵武市| 乐安县| 深泽县| 灵川县| 甘肃省| 屯昌县| 东辽县| 延长县| 石屏县| 渭南市| 嘉善县| 通化市| 合阳县| 大厂| 古丈县| 宜丰县| 清流县| 新昌县| 望奎县| 盐城市| 康保县| 砀山县| 邵阳县| 邹城市| 西乌珠穆沁旗|