A.你不希望在抽象和它的實現(xiàn)部分之間有一個固定的綁定關(guān)系。例如這種情況可能是因為,在程序運行時刻實現(xiàn)部分應(yīng)可以被選擇或者切換
B.類的抽象以及它的實現(xiàn)都應(yīng)該可以通過生成子類的方法加以擴(kuò)充。這時Bridge模式使你可以對不同的抽象接口和實現(xiàn)部分進(jìn)行組合,并分別對它們進(jìn)行擴(kuò)充
C.對一個抽象的實現(xiàn)部分的修改應(yīng)對客戶不產(chǎn)生影響,即客戶的代碼不必重新編譯
D.客戶程序與抽象類的實現(xiàn)部分之間存在著很大的依賴性
您可能感興趣的試卷
你可能感興趣的試題
A.你想使用一個已經(jīng)存在的類,而它的接口不符合你的需求
B.你想創(chuàng)建一個可以復(fù)用的類,該類可以與其他不相關(guān)的類或不可預(yù)見的類(即那些接口可能不一定兼容的類)協(xié)同工作
C.你想使用一些已經(jīng)存在的子類,但是不可能對每一個都進(jìn)行子類化以匹配它們的接口。對象適配器可以適配它的父類接口
D.如果刪除對象的外部狀態(tài),那么可以用相對較少的共享對象取代很多組對象
A.當(dāng)一個類不知道它所必須創(chuàng)建的對象的類的時候
B.當(dāng)一個類的實例只能有幾個不同狀態(tài)組合中的一種時
C.當(dāng)這個唯一實例應(yīng)該是通過子類化可擴(kuò)展的,并且客戶應(yīng)該無需更改代碼就能使用一個擴(kuò)展的實例時
D.當(dāng)一個類希望由它的子類來指定它所創(chuàng)建的對象的時候
A.當(dāng)要實例化的類是在運行時刻指定時,例如,通過動態(tài)裝載
B.當(dāng)你要強(qiáng)調(diào)一系列相關(guān)的產(chǎn)品對象的設(shè)計以便進(jìn)行聯(lián)合使用時
C.為了避免創(chuàng)建一個與產(chǎn)品類層次平行的工廠類層次時
D.當(dāng)一個類的實例只能有幾個不同狀態(tài)組合中的一種時
A.當(dāng)類只能有一個實例而且客戶可以從一個眾所周知的訪問點訪問它時
B.當(dāng)創(chuàng)建復(fù)雜對象的算法應(yīng)該獨立于該對象的組成部分以及它們的裝配方式時
C.當(dāng)構(gòu)造過程必須允許被構(gòu)造的對象有不同的表示時
D.一個對象的行為取決于它的狀態(tài),并且它必須在運行時刻根據(jù)狀態(tài)改變它的行為
A.當(dāng)一個類不知道它所必須創(chuàng)建的對象的類的時候
B.當(dāng)一個類希望由它的子類來指定它所創(chuàng)建的對象的時候
C.當(dāng)你提供一個產(chǎn)品類庫,而只想顯示它們的接口而不是實現(xiàn)時
D.當(dāng)類將創(chuàng)建對象的職責(zé)委托給多個幫助子類中的某一個,并且你希望將哪一個幫助子類是代理者這一信息局部化的時候
最新試題
以下哪項不屬于性能測試需要注意的事項()
對于用戶而言軟件測試是為了()
下面關(guān)于邊界值測試說法錯誤的是()
Quest Central for Database數(shù)據(jù)庫監(jiān)控工具不具有下列哪個功能模塊()
Quest Central for Database數(shù)據(jù)庫監(jiān)控工具不能管理以下哪種數(shù)據(jù)庫()
以下哪項測試是將所有單元組裝成模塊,測試各部分工作是否達(dá)到相應(yīng)技術(shù)指標(biāo)級的活動()
下面關(guān)于錯誤推測法說法錯誤的是()
下面關(guān)于判定表規(guī)則及規(guī)則合并描述錯誤的是()
白盒測試的目的不包括()
下面屬于判定表優(yōu)點的是()