<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      設計模式-創建型模式#工廠方法FactoryMethod

      此例子是java的23種設計模式中的例子,很久以前就看了。今天下班看來部電影《戰狼》,看完了沒什么事就翻了一下書,重溫了一次,以此做下筆記。


      FactoryMethod工廠方法

      定義一個用于創建對象的接口,讓子類決定實例化哪一個類。FactoryMethod
      使一個類的實例*延伸到其子類。

      適用性
      1、當一個類不知道它所必須創建的對象的類的時候。
      2、當一個類希望由它的子類來指定它所創建的對象的時候。
      3、當*將創建對象的職責委托給多個幫助*類中的某一個。并且*將希望哪一個
      幫助子類是代理者這一信息局部化的時候。

      參與者
      1、Product
      定義工廠方法所 創建的對象的接口。
      2、ConcreteProduct
      實現Product接口
      3、Creator
      聲明工廠方法,該方法返回一個Product類型的對象
      Creator也可以定義一個工廠方法的缺省實現,它返回一個缺省的
      ConcreteProduct對象。
      可以調用工廠方法以創建一個Product對象。
      4、ConcreteCreator

      重定義工廠方法以返回一個ConcreteProduct實例。


      類圖:


      *roduct

      package com.dsp;
      
      public interface Work {
      	void doWork();
      }
      



      ConcreteProduct
      package com.dsp;
      
      public class StudentWork implements Work {
      
      	@Override
      	public void doWork() {
      		System.out.println("學生做作業!");
      	}
      
      }
      

      package com.dsp;
      
      public class TeacherWork implements Work {
      
      	@Override
      	public void doWork() {
      		System.out.println("老師審批作業!");
      	}
      
      }
      



      Creator
      package com.dsp;
      
      public interface IWorkFactory {
      	Work getWork();
      }
      

      package com.dsp;
      
      public class StudentWorkFactory implements IWorkFactory {
      
      	@Override
      	public Work getWork() {
      		return new StudentWork();
      	}
      
      }
      



      ConcreteCreator
      package com.dsp;
      
      public class TeacherWorkFactory implements IWorkFactory {
      
      	@Override
      	public Work getWork() {
      		return new TeacherWork();
      	}
      
      }
      



      測試類
      package com.dsp;
      
      public class Test {
      
      	/**
      	 * @param args
      	 */
      	public static void main(String[] args) {
      		IWorkFactory studentWorkFactory = new StudentWorkFactory();
      		studentWorkFactory.getWork().doWork();
      		
      		IWorkFactory teacherWorkFactory = new TeacherWorkFactory();
      		teacherWorkFactory.getWork().doWork();
      	}
      
      }
      

      控制臺輸出:

      學生做作業!
      老師審批作業!


      posted @ 2015-06-09 00:04  Java夜未眠  閱讀(24)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 国产精品白浆免费视频| 南溪县| 会理县| 狠狠色噜噜狠狠狠狠777米奇| 69精品丰满人妻无码视频a片| 欧美牲交a欧美牲交aⅴ图片| 亚洲精品国产精品乱码不| 国产成人啪精品视频免费网| 不卡高清AV手机在线观看| 欧美成人精品三级网站| 欧美亚洲日本国产综合在线美利坚 | 五月综合婷婷开心综合婷婷| 久久综合亚洲色一区二区三区| 精品粉嫩国产一区二区三区| 久青草国产在视频在线观看| 国产手机在线αⅴ片无码观看| 蜜臀av一区二区三区精品| 亚洲国产精品久久久久婷婷图片| 久久无码人妻精品一区二区三区| 亚洲一二三区精品美妇| 亚洲久久色成人一二三区| 野外做受三级视频| 国产av亚洲精品ai换脸电影| 免费中文熟妇在线影片| 中文字幕结果国产精品| 老熟妇仑乱换频一区二区| 99久久国产综合精品成人影院| 国产国产午夜福利视频| 狠狠色狠狠色五月激情| 无码国模国产在线观看免费| 狠狠色丁香婷婷久久综合五月| 国产二区三区不卡免费| 99久久综合精品五月天| 精品久久久bbbb人妻| 加勒比中文字幕无码一区| 亚洲欧美国产日韩天堂区| 日韩一区二区在线观看的| 日本一区三区高清视频| 亚洲欧美日韩综合一区在线| 精品国产迷系列在线观看| 国产中文字幕在线一区|