色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

生成器模式(又名建造者模式、Builder Pattern)

  模式名稱:生成器模式

  1.問題描述

  生活場(chǎng)景:你玩過種地、種花等類似的游戲嗎?這是最近很流行的游戲喲!下面就是從種花游戲中剪切的四個(gè)花盆(盆景),很漂亮吧!你將不同的種子放入花盆,一段時(shí)間后你就可以看到各種美麗的鮮花了,不同種子所生產(chǎn)出來的鮮花有不同的花朵、葉子和枝莖。編碼該如何實(shí)現(xiàn)呢?

                          

  設(shè)計(jì)目標(biāo):將種子放入花盆,一段時(shí)間后就可以收獲美麗的鮮花! 

  2.不假思索的思路:將盆景看做一個(gè)類,有幾個(gè)盆景我new幾個(gè)對(duì)象,直接完成這一奇妙過程。

  設(shè)計(jì)類圖:

                      

/**
* 荷花盆景
*/
public class WaterlilyFlowerpot {
public String name;
//
public String stem;
//
public String leaf;
//
public String flower;

public void grow(){

//說明種類
name = "荷花";

//生產(chǎn)莖
stem = "40厘米";

//生產(chǎn)葉子
leaf = "圓形";

//生產(chǎn)花
flower = "白里透紅";

}
public void create(){
System.out.println(name
+ " : 莖"+" - "+stem+" , 葉"+" - "+leaf+" , 花"+" - "+flower);
}
}

/**
* 玫瑰盆景
*/
public class RoseFlowerpot {
public String name;
//
public String stem;
//
public String leaf;
//
public String flower;

public void grow(){

//說明種類
name = "玫瑰";

//生產(chǎn)莖
stem = "20厘米";

//生產(chǎn)葉子
leaf = "橢圓形";

//生產(chǎn)花
flower = "大紅大白";

}
public void create(){
System.out.println(name
+ " : 莖"+" - "+stem+" , 葉"+" - "+leaf+" , 花"+" - "+flower);
}
}
/**
* 場(chǎng)景類
*/
public class Client {
public static void main(String[] args){
//開始種玫瑰花
RoseFlowerpot rfp = new RoseFlowerpot();
rfp.grow();
//盛開
rfp.create();
//玫瑰 : 莖 - 20厘米 , 葉 - 橢圓形 , 花 - 大紅大白 半徑5厘米

//開始種荷花
WaterlilyFlowerpot wf = new WaterlilyFlowerpot();
wf.grow();
//盛開
wf.create();
//荷花 : 莖 - 40厘米 , 葉 - 圓形 , 花 - 白里透紅 半徑10厘米
}
}

it知識(shí)庫生成器模式(又名建造者模式、Builder Pattern),轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 松滋市| 黔南| 九龙坡区| 无棣县| 九寨沟县| 遵义市| 珲春市| 望都县| 深泽县| 确山县| 宁明县| 衡山县| 镇康县| 霞浦县| 澜沧| 肇庆市| 靖江市| 灵台县| 资溪县| 萨迦县| 高邮市| 红安县| 东方市| 新密市| 丹江口市| 邹平县| 宁远县| 顺义区| 萨嘎县| 廉江市| 上杭县| 盐山县| 兰州市| 陇川县| 车险| 乾安县| 佛冈县| 于田县| 闵行区| 烟台市| 泉州市|