這篇文章給大家介紹Java中怎么實現(xiàn)創(chuàng)建者模式,內(nèi)容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
目前創(chuàng)新互聯(lián)建站已為成百上千家的企業(yè)提供了網(wǎng)站建設、域名、虛擬空間、綿陽服務器托管、企業(yè)網(wǎng)站設計、秀英網(wǎng)站維護等服務,公司將堅持客戶導向、應用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
創(chuàng)建者模式和工廠模式有點類似,不過關注點不同。工廠模式往往只關心你要的是什么,二不關心這個東西的具體細節(jié)是什么。而創(chuàng)建模式則關心的是這個東西的具體細節(jié)的創(chuàng)建。拿創(chuàng)建人物來說,我們關心的不僅是創(chuàng)建一個人物,還要關心他的性別,膚色和名字,則可以使用創(chuàng)建者模式:
package builder; /** * * DOC 種族角色 * */ public class Race { private String name;// 名字 private String skinColor;// 膚色 private String sex;// 性別 public String getName() { return this.name; } public void setName(String name) { this.name = name; } public String getSkinColor() { return this.skinColor; } public void setSkinColor(String skinColor) { this.skinColor = skinColor; } public String getSex() { return this.sex; } public void setSex(String sex) { this.sex = sex; } }
package builder; /** * * DOC 我們關心的不僅僅是創(chuàng)建一個人物,還要關心其特征的創(chuàng)建 * */ public class RaceBuilder { private Race race; /** * DOC 創(chuàng)建一個種族 * * @return */ public RaceBuilder builder() { this.race = new Race(); return this; } /** * DOC 取名字 * * @return */ public RaceBuilder setName(String name) { this.race.setName(name); return this; } /** * DOC 選擇性別 * * @return */ public RaceBuilder setSex(String sex) { this.race.setSex(sex); return this; } /** * DOC 選擇膚色 * * @return */ public RaceBuilder setSkinColor(String skinColor) { this.race.setSkinColor(skinColor); return this; } /** * * DOC 返回這個創(chuàng)建好的種族 * * @return */ public Race create() { return this.race; } }
測試類:
package builder; public class Main { public static void main(String[] args) { Race race = new RaceBuilder().builder().setName("張三").setSex("男").setSkinColor("白色").create(); } }
關于Java中怎么實現(xiàn)創(chuàng)建者模式就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
網(wǎng)站題目:Java中怎么實現(xiàn)創(chuàng)建者模式
當前路徑:http://jinyejixie.com/article44/pospee.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供標簽優(yōu)化、小程序開發(fā)、網(wǎng)站排名、App開發(fā)、移動網(wǎng)站建設、品牌網(wǎng)站設計
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)