日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

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

系統 1757 0

工廠方法 (Factory Method)

??? 定義一個用于創建對象的接口,讓子類決定實例哪一個類。
??? 工廠方法使一個類的實例化延遲到其子類。在工廠方法模式中,核心的工廠類不再負責所有產品的創建,而是將具體創建的工作交給子類去做。這個核心工廠則變為抽象工廠角色,僅負責給出工廠子類必須實現的接口,而不接觸哪一產品創建的細節。
??? 工廠方法模式可以用來允許系統不修改具體工廠角色的情況下引進新產品
??? 在工廠方法模式中,一般都有一個平行的等級結構,抽象工廠對應抽象產品,具體工廠對應具體產品


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

?

    // 水果工廠
public interface FruitGardener { // 工廠接口
	public Fruit factory();
}

// 蘋果工廠
public class AppleGardener implements FruitGardener { // 工廠方法
	public Fruit factory() {
		Fruit f = new Apple();
		System.out.println("水果工廠成功創建一個水果:蘋果!");
		return f;
	}
}

// 草莓工廠
public class StrawberryGardener implements FruitGardener { // /工廠方法
	public Fruit factory() {
		Fruit f = new Strawberry();
		System.out.println("水果工廠成功創建一個水果:草莓!");
		return f;
	}
}

// 測試類(客戶端)
public class TestApp {
	private FruitGardener f1, f2, f3;
	private Fruit p1, p2, p3;

	private void test() {
		// 實力化水果工廠
		f1 = new AppleGardener();
		f3 = new StrawberryGardener();
		// 從水果工廠生產水果
		p1 = f1.factory();
		p3 = f3.factory();
	}

	public static void main(String args[]) {
		TestApp test = new TestApp();
		test.test();
	}
}
  

?

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


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 乌拉特中旗| 五寨县| 岳阳市| 思南县| 虞城县| 鄂托克旗| 台南县| 曲沃县| 榆树市| 松滋市| 苍南县| 瑞丽市| 高青县| 唐海县| 平遥县| 东乌| 观塘区| 禹州市| 巴林右旗| 湟中县| 阿城市| 阿克陶县| 永城市| 墨脱县| 安龙县| 潼关县| 察哈| 苏州市| 修武县| 三门峡市| 桐乡市| 唐海县| 德兴市| 达拉特旗| 白银市| 固安县| 兴国县| 吴桥县| 德化县| 长治县| 手游|