A.你想使用一個已經(jīng)存在的類,而它的接口不符合你的需求
B.你想表示對象的部分-整體層次結(jié)構(gòu)
C.當一個類的實例只能有幾個不同狀態(tài)組合中的一種時
D.一個對象的行為取決于它的狀態(tài),并且它必須在運行時刻根據(jù)狀態(tài)改變它的行為
您可能感興趣的試卷
你可能感興趣的試題
A.你不希望在抽象和它的實現(xiàn)部分之間有一個固定的綁定關(guān)系。例如這種情況可能是因為,在程序運行時刻實現(xiàn)部分應(yīng)可以被選擇或者切換
B.類的抽象以及它的實現(xiàn)都應(yīng)該可以通過生成子類的方法加以擴充。這時Bridge模式使你可以對不同的抽象接口和實現(xiàn)部分進行組合,并分別對它們進行擴充
C.對一個抽象的實現(xiàn)部分的修改應(yīng)對客戶不產(chǎn)生影響,即客戶的代碼不必重新編譯
D.客戶程序與抽象類的實現(xiàn)部分之間存在著很大的依賴性
A.你想使用一個已經(jīng)存在的類,而它的接口不符合你的需求
B.你想創(chuàng)建一個可以復(fù)用的類,該類可以與其他不相關(guān)的類或不可預(yù)見的類(即那些接口可能不一定兼容的類)協(xié)同工作
C.你想使用一些已經(jīng)存在的子類,但是不可能對每一個都進行子類化以匹配它們的接口。對象適配器可以適配它的父類接口
D.如果刪除對象的外部狀態(tài),那么可以用相對較少的共享對象取代很多組對象
A.當一個類不知道它所必須創(chuàng)建的對象的類的時候
B.當一個類的實例只能有幾個不同狀態(tài)組合中的一種時
C.當這個唯一實例應(yīng)該是通過子類化可擴展的,并且客戶應(yīng)該無需更改代碼就能使用一個擴展的實例時
D.當一個類希望由它的子類來指定它所創(chuàng)建的對象的時候
A.當要實例化的類是在運行時刻指定時,例如,通過動態(tài)裝載
B.當你要強調(diào)一系列相關(guān)的產(chǎn)品對象的設(shè)計以便進行聯(lián)合使用時
C.為了避免創(chuàng)建一個與產(chǎn)品類層次平行的工廠類層次時
D.當一個類的實例只能有幾個不同狀態(tài)組合中的一種時
A.當類只能有一個實例而且客戶可以從一個眾所周知的訪問點訪問它時
B.當創(chuàng)建復(fù)雜對象的算法應(yīng)該獨立于該對象的組成部分以及它們的裝配方式時
C.當構(gòu)造過程必須允許被構(gòu)造的對象有不同的表示時
D.一個對象的行為取決于它的狀態(tài),并且它必須在運行時刻根據(jù)狀態(tài)改變它的行為
最新試題
以下哪項用于觀察系統(tǒng)在一個給定的環(huán)境和場景中的性能表現(xiàn)是否與預(yù)期目標一致()
以下不屬于黑盒測試發(fā)現(xiàn)的錯誤類型的是()
Quest Central for Database數(shù)據(jù)庫監(jiān)控工具不能管理以下哪種數(shù)據(jù)庫()
下面對白盒測試的目的描述正確的是()
下面屬于判定表優(yōu)點的是()
以下哪項不屬于性能測試需要注意的事項()
以下屬于白盒測試和黑盒測試共同點的是()
以下不屬于判定表建立步驟的是()
以下不屬于磁盤監(jiān)控任務(wù)的是()
TestManager哪個窗口用于顯示執(zhí)行結(jié)果()