国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

Java設計模式之創建者模式簡介

2019-11-26 15:28:08
字體:
來源:轉載
供稿:網友

Java的創建者模式與工廠模式有點類似,不過關注點不同。工廠模式往往只關心你要的是什么,而不關心這個東西的具體細節是什么。相對而言創建模式則是關心這個東西的具體細節的創建。拿創建人物來說,我們關心的不僅是創建一個人物,還要關心他的性別,膚色和名字,則可以使用創建者模式。

程序實例如下所示:

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 我們關心的不僅僅是創建一個人物,還要關心其特征的創建 *  */public class RaceBuilder {  private Race race;  /**   * DOC 創建一個種族   *    * @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 返回這個創建好的種族   *    * @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();  }}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 舒城县| 辽阳县| 柳林县| 凌源市| 墨江| 陇南市| 全南县| 屏南县| 岫岩| 延安市| 温州市| 金溪县| 九江市| 鄂州市| 东阿县| 辽阳市| 滦平县| 靖州| 苍梧县| 通山县| 句容市| 巨鹿县| 清水县| 滨州市| 丁青县| 石家庄市| 介休市| 安义县| 平江县| 淅川县| 新安县| 南川市| 台中市| 体育| 玛纳斯县| 娱乐| 澎湖县| 高州市| 班戈县| 肇东市| 凤山县|