閱讀下列說明和Java代碼,將應(yīng)填入(n)處的字句寫在答題紙的對應(yīng)欄內(nèi)。
說明:某大型商場內(nèi)安裝了多個簡易的紙巾售賣機,自動售出2元錢一包的紙巾,且每次僅售出一包紙巾。紙巾售賣機的狀態(tài)如圖10.37所示。采用狀態(tài)(State)模式來實現(xiàn)該紙巾售賣機,得到如圖10.38所示的類圖。
其中類State為抽象類,定義了投幣、退幣、出紙巾等方法接口。類SoldState、SoldOutState、NoQuarterState和HasQuarterState分別對應(yīng)圖10.37中紙巾售賣機的4種狀態(tài):售出紙巾、紙巾售完、沒有投幣、有2元錢。
Java代碼如下:
您可能感興趣的試卷
你可能感興趣的試題
A.業(yè)務(wù)結(jié)構(gòu)
B.結(jié)構(gòu)元素如何完成業(yè)務(wù)用例
C.業(yè)務(wù)結(jié)構(gòu)以及元素如何完成業(yè)務(wù)用例
D.組織支持的業(yè)務(wù)過程
A.工作過程中的靜態(tài)元素
B.工作過程中的動態(tài)元素
C.工作過程中的邏輯視圖
D.組織支持的業(yè)務(wù)過程
(1)設(shè)計模式允許一個對象在其狀態(tài)改變時,通知依賴它的所有對象。該設(shè)計模式的類圖如圖所示,其中,(2)在其狀態(tài)發(fā)生改變時,向它的各個觀察者發(fā)出通知。
空白(2)處應(yīng)選擇()
A.Subject
B.ConcreteSubject
C.Observer
D.ConcreteObserver
最新試題
面向?qū)ο蠓治龅牡谝徊绞牵ǎ?/p>
空白(1)處應(yīng)選擇()
問題1:根據(jù)說明中的描述,給出圖10.33中的U1和U2所對應(yīng)的用例,以及(1)處所對應(yīng)的關(guān)系。問題2:根據(jù)說明中的描述,給出圖10.34中缺少的C1~C6所對應(yīng)的類名以及(2)、(3)處所對應(yīng)的多重度(類名使用說明中給出的英文詞匯)。問題3:根據(jù)說明中的描述,給出RoadSegment、Trajectory和Card所對應(yīng)的類的關(guān)鍵屬性(屬性名使用說明中給出的英文詞匯)。
空白(2)處應(yīng)選擇()
Java代碼如下:
C++代碼如下:
()模式通過提供與對象相同的接口來控制對這個對象的訪問。
c++代碼如下:
問題1:根據(jù)說明中的描述,給出圖10.39中U1和U2所對應(yīng)的用例,以及(1)和(2)處所對應(yīng)的關(guān)系。問題2:根據(jù)說明中的描述,給出圖10.40中缺少的C1~C8所對應(yīng)的類名以及(3)~(6)處所對應(yīng)的多重度。問題3:圖10.40中的類圖設(shè)計采用了橋接(Bridge)設(shè)計模式,請說明該模式的內(nèi)涵。
空白(2)處應(yīng)選擇()