A.當(dāng)一個(gè)對(duì)象必須通知其它對(duì)象,而它又不能假定其它對(duì)象是誰(shuí)。換言之,你不希望這些對(duì)象是緊密耦合的
B.許多相關(guān)的類僅僅是行為有異。“策略”提供了一種用多個(gè)行為中的一個(gè)行為來配置一個(gè)類的方法
C.需要使用一個(gè)算法的不同變體。例如,你可能會(huì)定義一些反映不同的空間/時(shí)間權(quán)衡的算法。當(dāng)這些變體實(shí)現(xiàn)為一個(gè)算法的類層次時(shí)可以使用策略模式
D.算法使用客戶不應(yīng)該知道的數(shù)據(jù)??墒褂貌呗阅J揭员苊獗┞稄?fù)雜的、與算法相關(guān)的數(shù)據(jù)結(jié)構(gòu)
您可能感興趣的試卷
你可能感興趣的試題
A.當(dāng)一個(gè)抽象模型有兩個(gè)方面,其中一個(gè)方面依賴于另一方面。將這二者封裝在獨(dú)立的對(duì)象中以使它們可以各自獨(dú)立地改變和復(fù)用
B.當(dāng)對(duì)一個(gè)對(duì)象的改變需要同時(shí)改變其它對(duì)象,而不知道具體有多少對(duì)象有待改變
C.當(dāng)一個(gè)對(duì)象必須通知其它對(duì)象,而它又不能假定其它對(duì)象是誰(shuí)。換言之,你不希望這些對(duì)象是緊密耦合的
D.在不影響其他對(duì)象的情況下,以動(dòng)態(tài)、透明的方式給單個(gè)對(duì)象添加職責(zé)
A.抽象出待執(zhí)行的動(dòng)作以參數(shù)化某對(duì)象,使用過程語(yǔ)言中的回調(diào)(callback)函數(shù)表達(dá)這種參數(shù)化機(jī)制
B.Java語(yǔ)言中的:AWT的事件處理
C.在需要用比較通用和復(fù)雜的對(duì)象指針代替簡(jiǎn)單的指針的時(shí)候
D.一個(gè)系統(tǒng)需要支持交易(transaction),一個(gè)交易結(jié)構(gòu)封裝了一組數(shù)據(jù)更新命令
A.你想使用一個(gè)已經(jīng)存在的類,而它的接口不符合你的需求
B.根據(jù)需要?jiǎng)?chuàng)建開銷很大的對(duì)象
C.在需要用比較通用和復(fù)雜的對(duì)象指針代替簡(jiǎn)單的指針的時(shí)候
D.取代了簡(jiǎn)單的指針,它在訪問對(duì)象時(shí)執(zhí)行一些附加操作
A.一個(gè)應(yīng)用程序使用了大量的對(duì)象
B.完全由于使用大量的對(duì)象,造成很大的存儲(chǔ)開銷
C.對(duì)象的大多數(shù)狀態(tài)都可變?yōu)橥獠繝顟B(tài)
D.你想使用一個(gè)已經(jīng)存在的類,而它的接口不符合你的需求
A.在不影響其他對(duì)象的情況下,以動(dòng)態(tài)、透明的方式給單個(gè)對(duì)象添加職責(zé)
B.處理那些可以撤消的職責(zé)
C.客戶程序與抽象類的實(shí)現(xiàn)部分之間存在著很大的依賴性
D.當(dāng)不能采用生成子類的方法進(jìn)行擴(kuò)充時(shí)。一種情況是,可能有大量獨(dú)立的擴(kuò)展,為支持每一種組合將產(chǎn)生大量的子類,使得子類數(shù)目呈爆炸性增長(zhǎng)。另一種情況可能是因?yàn)轭惗x被隱藏,或類定義不能用于生成子類
最新試題
下面關(guān)于判定表規(guī)則及規(guī)則合并描述錯(cuò)誤的是()
下面不是等價(jià)類測(cè)試用例設(shè)計(jì)原則的是()
基本路徑測(cè)試法中程序環(huán)境復(fù)雜性的含義是()
以下屬于白盒測(cè)試和黑盒測(cè)試共同點(diǎn)的是()
以下哪種集成測(cè)試從程序模塊結(jié)構(gòu)中最底層的模塊開始組裝和測(cè)試()
以下哪種集成測(cè)試先對(duì)核心軟件部件進(jìn)行集成測(cè)試()
下面關(guān)于錯(cuò)誤推測(cè)法說法錯(cuò)誤的是()
下面屬于判定表優(yōu)點(diǎn)的是()
下面關(guān)于邊界值測(cè)試說法錯(cuò)誤的是()
以下哪項(xiàng)屬于SQL Server數(shù)據(jù)庫(kù)資源監(jiān)控指標(biāo)()