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

JAVA簡單工廠模式(從現(xiàn)實生活角度理解代碼原理)

 更新時間:2017年03月14日 11:06:09   作者:潘侯爺  
本文主要介紹了JAVA簡單工廠模式(從現(xiàn)實生活角度理解代碼原理)的相關(guān)知識。具有很好的參考價值。下面跟著小編一起來看下吧

簡單工廠模式(Simple Factory),說他簡單是因為我們可以將此模式比作一個簡單的民間作坊,他們只有固定的生產(chǎn)線生產(chǎn)固定的產(chǎn)品。也可以稱他為靜態(tài)工廠設(shè)計模式,類似于之前提到過靜態(tài)代理設(shè)計模式,一條生產(chǎn)線生產(chǎn)一種產(chǎn)品(一個代理代理一種業(yè)務(wù)),為了方便大家理解,我們將KFC比作一個簡單的工廠,實現(xiàn)代碼如下:

//建造接口(或者抽象類)提供食物生產(chǎn)方法
interface Food{
  public abstract void get();
}
//漢堡類(后廚生產(chǎn)線)來實現(xiàn)食物生產(chǎn)方法
class Hamburger implements Food{
  public void get(){
    System.out.println("漢堡來了");
  }
}
//炸雞類(后廚生產(chǎn)線)來實現(xiàn)食物生產(chǎn)方法
class Chicken implements Food{
  public void get(){
    System.out.println("炸雞來了");
  }
}
//KFC(靜態(tài)工廠類)
class KFC{
  //提供獲取食物的方法(傳入的參數(shù)name為食客所點食物)
  public static Food getFood(String name){
    /*如果所點食物是炸雞/漢堡(見名知義)
     *則實例化該生產(chǎn)線(通知對應(yīng)后廚生產(chǎn)線)
     */
    if(name.equals("炸雞")){
      return new Chicken();
    }
    if(name.equals("漢堡")){
      return new Hamburger();
    }
    return null;
  }
}
//測試類
public class Test{
  public static void main(String[] args){
    KFC kfc = new KFC();//實例化KFC
    Food m = kfc.getFood("炸雞");
    Food n = kfc.getFood("hanbao");//輸入的字符串不符合工廠類對應(yīng)值
    try{
      m.get();
      n.get();
     //添加異常處理(如果沒有對應(yīng)生產(chǎn)線則提示異常處理結(jié)果)
    }catch(NullPointerException e){
      System.out.print("沒有你要的食物");
    }
  }
}

輸出結(jié)果:

1 炸雞來了 2 沒有你要的食物

以上就是本文的全部內(nèi)容,希望本文的內(nèi)容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持腳本之家!

相關(guān)文章

最新評論

巩义市| 漳平市| 横峰县| 荃湾区| 海原县| 滦平县| 和静县| 宜兰县| 五原县| 新巴尔虎左旗| 双牌县| 泾阳县| 嘉义县| 安西县| 方山县| 承德市| 万全县| 双牌县| 鸡泽县| 晴隆县| 靖宇县| 大关县| 绥江县| 芜湖县| 吕梁市| 大邑县| 石楼县| 钦州市| 漯河市| 太白县| 汪清县| 工布江达县| 福州市| 团风县| 牡丹江市| 鄂伦春自治旗| 泽库县| 左权县| 新丰县| 辽宁省| 东辽县|