這週在看**時,看到別人的**裡用到了工廠設計模式,做為小白,所以來學習下。
我們首先來看乙個例子,是女媧造人的例子,女媧需要造黑色、黃色和白色三種人。並且每種人分為男性和女性。
這個例子中就可以用到工廠設計模式。具體的類圖如下:
public inte***ce human人種有三個抽象類,負責人種的抽象屬性定義:膚色和語言。**如下:
//白色人種public abstract class abstractwhitehuman implements human
@override
public void talk()
}
//黑色人種public abstract class abstractblackhuman implements human
@override
public void talk()
}
//黃色人種每個抽象類都有兩個實現類,分別實現公共的最細節、最具體的事物:**和語言。以黃色女性人種威力,**清單如下:public abstract class abstractyellowhuman implements human
@override
public void talk()
}
public class femaleyellowhuman extends abstractyellowhuman}
public class maleyellowhuman extends abstractyellowhuman其它的黑色人種,白色人種的男性和女性**與此類似,不再重複編寫。到此為止我們已經把真實世界的人種都定義出來了,剩下的工作就是怎麼製造人類了。介面humanfactory的**清單如下:}
public inte***ce humanfactory接下來,我們在定義兩個分別產生男性和女性的工廠類:
public class femalefactory implements humanfactory//生產黑色女性
@override
public human createblackhuman()
//生產白色女性
@override
public human createwhitehuman()
}
public class malefactory implements humanfactory那麼,接下來我們來看一下女娃造人的場景。//生產黑色男性
@override
public human createblackhuman()
//生產白色男性
@override
public human createwhitehuman()
}
public class nvwa
設計模式 工廠設計模式
用於建立物件的介面,交給子類去實現 我們舉乙個生產nokia的例子 public abstract class nokiaphone先試定義了乙個抽象類,抽象出方法poweronphone 模擬手機開機的動作 public class nokia5200 extends nokiaphone pub...
設計模式 工廠設計模式
工廠模式分為工廠方法模式和抽象工廠模式 工廠方法模式分為 普通工廠模式,就是建立乙個工廠類,對實現了同一介面的一些類進行例項的建立。多個工廠方法模式,是對普通工廠方法模式的改進,在普通工廠方法模式中,如果傳遞的字串出錯,則不能正確建立物件,而多個工廠方法模式是提供多個工廠方法,分別建立物件。靜態工廠...
設計模式 工廠模式(簡單工廠)
一 簡單工廠 定義 簡單工廠模式 factory pattern 屬於類的創新型模式,又叫靜態工廠方法模式 static factorymethod pattern 是通過專門定義乙個類來負責建立其他類的例項,被建立的例項通常都具有共同的父類。特點 工廠類直接實現,乙個產品介面,乙個工廠類可以產生多...