最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊

【設(shè)計(jì)模式】要點(diǎn)2

2023-05-11 19:58 作者:月笠丶  | 我要投稿

組合


21上

1)protected String name;

2)public abstract boolean addMenuElement(MenuComponent element)

3)public abstract List<MenuComponent>getElement()

4)private list<MenuComponent>elementList

5)mainMenu.addMenuElement(subMenu)


總結(jié):

1)#protected受保護(hù)的,經(jīng)常出現(xiàn)在主類第一行

2)List類無前綴,不出現(xiàn)void,abstract

3)List<>后接具體對(duì)象(小寫例如elementList)



裝飾器


12上

1)abstract class Beverage

2)public String getDescription(){

return description;}

3)public abstract int cost():

4)Beverage beverage

5)beverage=new Mocha(beverage)

6)beverage=new Whip(beverage)


總結(jié):

1)返回值為字符串,優(yōu)先考慮String方法,對(duì)應(yīng)上下午找具體

2)主類第一行經(jīng)常出現(xiàn)主類 具體對(duì)象,例如 Beverage beverage

3)裝飾器模式存在 具體對(duì)象=new 子類(具體對(duì)象)


16下

1)ticket.printInvoice() //非空則打印

2)super.printInvoice() //打印父類

3)super.printInvoice()

4)ticket=new HeadDecorator(new FootDecorator(t)) //套用

5)ticket=new HeadDecorator(new FootDecorator(null))


總結(jié):

1)super()調(diào)用父類方法



享元


21下

1)public abstract void draw()

2)private static final ArrayList<Piece>m_arrayPiece=new ArrayList

3)Piece piece=null

4)piece.draw()

5)piece.draw()


總結(jié):

1)子類多態(tài),調(diào)用父類

2)具體對(duì)象.方法,例如piece.draw()

行為型:


命令


14下

1)interface Command

2)public void execute(){

light.on();}

3)light.off()

4)onCommands[slot]

5)offCommands[slot]

6)onCommands[slot].execute()

7)offCommands[slot].execute()


總結(jié):

1)一個(gè)類下面的第一行該類名 對(duì)象,為定義對(duì)象

例如:Light light

2)Command[] onCommands = new Command[7]

可推onCommands[int]為具體對(duì)象,后面可以有.方法



觀察者


14上

1)class EnvironmentData implements Subject

2)observer.update(temperature,humidity,cleanness)

3)public void measurementsChanged(){

notifyObservers();}

4)measurementsChanged()

5)class CurrentConditionDisplay implements Observer

6)envData.registerObserver(this)


總結(jié):

1)調(diào)用當(dāng)前對(duì)象不具體時(shí),寫對(duì)象.方法(this)

2)根據(jù)功能為生成、新建,則用注冊、add、attach


19下

1)public void update()

2)private List<Observer>myObs

3)for(Observer obs:this myObs){

obs.update();}

4)public DocExplorer(String name,Subject subject)

5)sub.Attach(this)



狀態(tài)


11下

1)State soldOutState,noQuarterState,hasQuarterState,soldState,state

2)tissueMachine.setState(tissueMachine.getHasQuarterState())

3)~(tissueMachine.getNoQuarterState()) //tissue紙巾

4)~(tissueMachine.getNoQUarterState())

5)~(tissueMachine.getSoldOutState())


總結(jié):

1)狀態(tài)類名State

2)具體哪種狀態(tài)根據(jù)上下文



策略


10下

1)protected FlyBehavior flybehavior

2)protected TakeOffBehavior takeoffbehavior

3)public void fly(){

flybehavior.fly();}

4)public void takeoff{

takeoffbehavior.takeoff():}

5)class Helicoper extends AirCraft

6)flyBehavior = new SubSonicFly()

7)takeOffBehavior = new VerticalTakeOff()


總結(jié):

1)調(diào)用子類名加()


15下

1)public double accept Cash(double money)

2)cs = new CashNormal()

3)cs = new CashDiscount(0.8)

4)cs = new CashReturn(300,100)

5)return cs.acceptCash(money)


總結(jié):

1)對(duì)象 = new 子類名()

2)get為獲取 return 對(duì)象.方法 返回內(nèi)容


19下

1)public void step()

2)protected BrakeBehavior wheel //brake剎車

3)public void brake(){

wheel.stop();}

4)wheel = behavior

5)car1.brake()



訪問者


15上

1)public void visit(Book p_book)

2)public void visit(Article p_article)

3)public void accept(LibraryVisitor visitor)

4)visitor.visit(this)

5)visitor.visit(this)


【設(shè)計(jì)模式】要點(diǎn)2的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
台湾省| 灌云县| 南通市| 竹北市| 安陆市| 高青县| 石柱| 龙口市| 尉犁县| 柯坪县| 霍林郭勒市| 桂东县| 哈尔滨市| 天镇县| 弋阳县| 察雅县| 陆河县| 定南县| 武安市| 安岳县| 雷波县| 萍乡市| 延安市| 闽清县| 黄陵县| 海晏县| 绥化市| 防城港市| 鞍山市| 克东县| 南皮县| 龙陵县| 辽中县| 五大连池市| 夏邑县| 青海省| 岗巴县| 罗城| 横山县| 玉屏| 澳门|