A.在不影響其他對象的情況下,以動態(tài)、透明的方式給單個對象添加職責
B.處理那些可以撤消的職責
C.客戶程序與抽象類的實現(xiàn)部分之間存在著很大的依賴性
D.當不能采用生成子類的方法進行擴充時。一種情況是,可能有大量獨立的擴展,為支持每一種組合將產生大量的子類,使得子類數(shù)目呈爆炸性增長。另一種情況可能是因為類定義被隱藏,或類定義不能用于生成子類
您可能感興趣的試卷
你可能感興趣的試題
A.你想使用一個已經(jīng)存在的類,而它的接口不符合你的需求
B.你想表示對象的部分-整體層次結構
C.當一個類的實例只能有幾個不同狀態(tài)組合中的一種時
D.一個對象的行為取決于它的狀態(tài),并且它必須在運行時刻根據(jù)狀態(tài)改變它的行為
A.你不希望在抽象和它的實現(xiàn)部分之間有一個固定的綁定關系。例如這種情況可能是因為,在程序運行時刻實現(xiàn)部分應可以被選擇或者切換
B.類的抽象以及它的實現(xiàn)都應該可以通過生成子類的方法加以擴充。這時Bridge模式使你可以對不同的抽象接口和實現(xiàn)部分進行組合,并分別對它們進行擴充
C.對一個抽象的實現(xiàn)部分的修改應對客戶不產生影響,即客戶的代碼不必重新編譯
D.客戶程序與抽象類的實現(xiàn)部分之間存在著很大的依賴性
A.你想使用一個已經(jīng)存在的類,而它的接口不符合你的需求
B.你想創(chuàng)建一個可以復用的類,該類可以與其他不相關的類或不可預見的類(即那些接口可能不一定兼容的類)協(xié)同工作
C.你想使用一些已經(jīng)存在的子類,但是不可能對每一個都進行子類化以匹配它們的接口。對象適配器可以適配它的父類接口
D.如果刪除對象的外部狀態(tài),那么可以用相對較少的共享對象取代很多組對象
A.當一個類不知道它所必須創(chuàng)建的對象的類的時候
B.當一個類的實例只能有幾個不同狀態(tài)組合中的一種時
C.當這個唯一實例應該是通過子類化可擴展的,并且客戶應該無需更改代碼就能使用一個擴展的實例時
D.當一個類希望由它的子類來指定它所創(chuàng)建的對象的時候
A.當要實例化的類是在運行時刻指定時,例如,通過動態(tài)裝載
B.當你要強調一系列相關的產品對象的設計以便進行聯(lián)合使用時
C.為了避免創(chuàng)建一個與產品類層次平行的工廠類層次時
D.當一個類的實例只能有幾個不同狀態(tài)組合中的一種時
最新試題
以下哪種集成測試從程序模塊結構中最底層的模塊開始組裝和測試()
增殖式集成方式不包括()
下面關于判定表規(guī)則及規(guī)則合并描述錯誤的是()
對于軟件開發(fā)者而言軟件測試是為了()
下面關于錯誤推測法說法錯誤的是()
以下屬于白盒測試和黑盒測試共同點的是()
對于用戶而言軟件測試是為了()
下面不是等價類測試用例設計原則的是()
TestManager哪個窗口用于顯示執(zhí)行結果()
Quest Central for Database數(shù)據(jù)庫監(jiān)控工具不具有下列哪個功能模塊()