JAVA設計模式 工廠方法模式

2021-06-19 23:52:07 字數 1233 閱讀 3537

package com.fsti.factory.factorymethod;

public inte***ce output

package com.fsti.factory.factorymethod;

public class printer implements output else

} public void out()

}}

package com.fsti.factory.factorymethod;

public class betterprinter implements output else

} public void out()

}}

package com.fsti.factory.factorymethod;

public inte***ce outputfactory

package com.fsti.factory.factorymethod;

public class betterprinte***ctory implements outputfactory

}

package com.fsti.factory.factorymethod;

public class printe***ctory implements outputfactory

}

package com.fsti.factory.factorymethod;

public class computer

public void keyin(string str)

public void print()

public static void main(string args) else

computer c = new computer(of.getoutput());

c.keyin("工廠模式之");

c.keyin("工廠方法模式");

c.print();

}}

採用工廠方法設計的架構,客戶端**成功是與被呼叫物件的實現類分類,但帶來了另一種耦合:客戶端**與不同的工廠類耦合。

Java設計模式 工廠方法模式

定義乙個用於建立物件的介面,讓子類決定將哪乙個類例項化。factory method 使乙個類的例項化延遲到其子類。package car inte ce public inte ce icar inte ce package car imple import car inte ce.icar in...

Java設計模式 工廠方法模式

工廠方法模式應用背景 客戶類不關心使用哪個具體的類,只關心介面所提供的功能。建立過程比較複雜,例如需要初始化其他關聯的資源類。介面或者抽象類有許多實現類,客戶 需要編寫大量if else邏輯來決定執行時使用哪個具體的實現類。不希望給客戶程式暴露太多的類的內部結構,這樣做可以降低耦合度。優化效能,比如...

java設計模式 工廠方法模式

簡單工廠模式的應用就是用來建立乙個物件,簡單工廠模式是將所有物件的初始化集於乙個具體的工廠類來實現,這個工廠類負責所有產品的建立,但是這種建立只能建立單一的產品,如簡單工廠模式裡的chickenfactory這種工廠只能生產雞肉這個系列的產品,而當需求發生變化時簡單工廠模式就無法應對了。例如 我再一...