<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    魚躍于淵

    First know how, Second know why !
    posts - 0, comments - 1, trackbacks - 0, articles - 49

    抽象工廠模式

    Posted on 2008-12-21 09:04 魚躍于淵 閱讀(125) 評論(0)  編輯  收藏 所屬分類: 設(shè)計(jì)模式

      1 package com.givetop.AbstractFactory;
      2 
      3 public class Factory {
      4     public static void main(String[] args){
      5         YangSheng ys = new YangSheng();
      6         Animal bull = null;
      7         bull = ys.getAnimal("Bull");
      8         bull.eat();
      9         bull.sleep();
     10     }
     11 }
     12 
     13 interface NWFactory{
     14     public Animal getAnimal(String type);
     15     public Person getPerson(String type);
     16 }
     17 
     18 class YangSheng implements NWFactory{
     19     Person man = null;
     20     Animal bull = null;
     21     public Animal getAnimal(String type){
     22         try {
     23             bull = (Bull)Class.forName("com.givetop.AbstractFactory."+type).newInstance();
     24         } catch (InstantiationException e) {
     25             e.printStackTrace();
     26         } catch (IllegalAccessException e) {
     27             e.printStackTrace();
     28         } catch (ClassNotFoundException e) {
     29             e.printStackTrace();
     30         }
     31         return bull;
     32     }
     33     public Person getPerson(String type){
     34         try {
     35             man = (Man)Class.forName("com.givetop.AbstractFactory."+type).newInstance();
     36         } catch (InstantiationException e) {
     37             e.printStackTrace();
     38         } catch (IllegalAccessException e) {
     39             e.printStackTrace();
     40         } catch (ClassNotFoundException e) {
     41             e.printStackTrace();
     42         }
     43         return man;
     44     }
     45 }
     46 
     47 class YinSheng implements NWFactory{
     48     Person woman = null;
     49     Animal cow = null;
     50     public Animal getAnimal(String type){
     51         try {
     52             cow = (Cow)Class.forName("com.givetop.AbstractFactory."+type).newInstance();
     53         } catch (InstantiationException e) {
     54             e.printStackTrace();
     55         } catch (IllegalAccessException e) {
     56             e.printStackTrace();
     57         } catch (ClassNotFoundException e) {
     58             e.printStackTrace();
     59         }
     60         return cow;
     61     }
     62     public Person getPerson(String type){
     63         try {
     64             woman = (Woman)Class.forName("com.givetop.AbstractFactory."+type).newInstance();
     65         } catch (InstantiationException e) {
     66             e.printStackTrace();
     67         } catch (IllegalAccessException e) {
     68             e.printStackTrace();
     69         } catch (ClassNotFoundException e) {
     70             e.printStackTrace();
     71         }
     72         return woman;
     73     }
     74 }
     75 
     76 interface Animal{
     77     public void eat();
     78     public void sleep();
     79 }
     80 
     81 interface Person{
     82     public void eat();
     83     public void sleep();
     84 }
     85 
     86 class Bull implements Animal{
     87     public void eat(){
     88         System.out.println("公牛開始吃東西了!");
     89     }
     90     public void sleep(){
     91         System.out.println("公牛開始睡覺了!");
     92     }
     93 }
     94 
     95 class Cow implements Animal{
     96     public void eat(){
     97         System.out.println("奶牛開始吃東西了!");
     98     }
     99     public void sleep(){
    100         System.out.println("奶牛開始睡覺了!");
    101     }
    102 }
    103 
    104 class Man implements Person{
    105     public void eat(){
    106         System.out.println("男人開始吃東西了!");
    107     }
    108     public void sleep(){
    109         System.out.println("男人要睡覺了!");
    110     }
    111 }
    112 
    113 class Woman implements Person{
    114     public void eat(){
    115         System.out.println("女人開始吃東西了!");
    116     }
    117     public void sleep(){
    118         System.out.println("女人要睡覺了!");
    119     }
    120 }

    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 久久久久无码专区亚洲av | 在线观看亚洲一区二区| 爱爱帝国亚洲一区二区三区| 扒开双腿猛进入爽爽免费视频| 亚洲天然素人无码专区| 在线观看免费成人| 亚洲AV女人18毛片水真多| 国产嫩草影院精品免费网址| 免费无码又爽又黄又刺激网站| 久久精品国产亚洲AV不卡| 一级中文字幕免费乱码专区| 亚洲一区二区高清| 爱丫爱丫影院在线观看免费| 亚洲国产成人久久综合碰碰动漫3d| 桃子视频在线观看高清免费视频| 亚洲精品视频在线观看视频| 久久国产精品成人片免费| 亚洲中文字幕日本无线码| 免费在线观看视频a| 少妇性饥渴无码A区免费| 亚洲熟妇色自偷自拍另类| 在线观看免费成人| 一级一片免费视频播放| 亚洲视频精品在线| 夜夜嘿视频免费看| 国产做国产爱免费视频| 77777_亚洲午夜久久多人| 日韩精品视频免费观看| eeuss影院www天堂免费| 亚洲人成人77777网站不卡| 国产色爽免费视频| 污污网站18禁在线永久免费观看| 亚洲综合精品伊人久久| 亚洲午夜未满十八勿入网站2| 中文字幕免费在线看线人| 男女超爽视频免费播放| 亚洲av鲁丝一区二区三区| 国产麻豆剧传媒精品国产免费| 久久国产乱子精品免费女| 亚洲无码一区二区三区| 久久久久亚洲AV成人无码|