java 工廠模式分析理解

2021-09-10 02:01:55 字數 1563 閱讀 3034

1、普通工廠模式:建立乙個工廠類,對實現同一介面的不同類,根據不同的類別例項化不同的物件。

介面類:

public inte***ce sender {  

public void send();  

public class printsend1implements sender{

public void send(){

system.out.println("這是工廠第乙個物品a");

public class printsend2implements sender{

public void send(){

system.out.println("這是工廠第乙個物品b");

工廠類:

public class factory{

public void factorytest(string factorytype){

swicth(factorytype){

case "1": return new printsend1();breack;

case "2": return new printsend2();breack;

default:println("輸入型別錯誤,請重新輸入");

測試類:

public static void main(string args){

factory factory=new factory();

sender sender=factory.factorytest("factorytype");

sender.send();

總結:通過factory工廠類獲取sender類子類的例項化。缺點如果再加入一種想要生產的物品,還是需要修改工廠類。

工廠類改進類:

public class factory1 implements factoryclass{

public void factorytest(string factorytype){

return new printsend1();

public class factory2 implements factoryclass{

public void factorytest(string factorytype){

return new printsend2();

另加乙個藉口類:

public inte***ce factoryclass{

public sender factorytest();

主方法:

public class test{

public static void main(string args){

factoryclass factoryclass=new factory2();

sender sender=factoryclass.factorytest();

sender.send();

總結:通過介面的實現,為每乙個工廠新增共同的方法。但每個工廠中的例項化物件不同。這樣的工廠類,就不存在新增新的物品改寫工廠類,只需新增新的工廠類就好了。

java中工廠模式理解

首先說說簡單工廠模式,我用現實中的汽車工廠舉例子,首先有個汽車類的介面叫做car,裡面有個開車的方法叫做drive 然後有個吉利車的類叫做jili,實現了car的介面,還有個奇瑞車的類叫做qirui,也實現了car的介面 因為都是車嘛,當然能開了 inte ce car class jili imp...

工廠模式理解

例如乙個基類pet有許多個子類,聲稱這個體系中的隨機物件,當這個體系不斷有新子類增加的時候,因為該繼承體系中已經存在了常規的基礎,所以就有可能出現問題 考慮一點,為每個子類增加靜態初始化器,但是問題是 靜態初始化器只能在類首先被載入的時候才能被呼叫,而生成器在其列表中如果沒有這個類,他就永遠不能被呼...

工廠模式理解

工廠模式是一種建立型的設計模式,所謂建立型設計模式,不是簡單的使用new方法 例項化物件,建立物件時在 由誰?建立什麼?何時?等方面,提高了設計的靈活性。比如,普通工廠模式 對實現同一介面的類進行例項建立。需求 定義乙個生產龍蝦的工廠,通過使用這個工廠能烹飪各種龍蝦。思路 定義乙個工廠類,去建立其他...