2024年大學(xué)試題(計(jì)算機(jī)科學(xué))-設(shè)計(jì)模式歷年考試高頻考點(diǎn)試題附帶答案_第1頁
2024年大學(xué)試題(計(jì)算機(jī)科學(xué))-設(shè)計(jì)模式歷年考試高頻考點(diǎn)試題附帶答案_第2頁
2024年大學(xué)試題(計(jì)算機(jī)科學(xué))-設(shè)計(jì)模式歷年考試高頻考點(diǎn)試題附帶答案_第3頁
2024年大學(xué)試題(計(jì)算機(jī)科學(xué))-設(shè)計(jì)模式歷年考試高頻考點(diǎn)試題附帶答案_第4頁
2024年大學(xué)試題(計(jì)算機(jī)科學(xué))-設(shè)計(jì)模式歷年考試高頻考點(diǎn)試題附帶答案_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

2024年大學(xué)試題(計(jì)算機(jī)科學(xué))-設(shè)計(jì)模式歷年考試高頻考點(diǎn)試題附帶答案(圖片大小可自由調(diào)整)第1卷一.參考題庫(共25題)1.命令模式將()的對象和()的對象解耦。2.設(shè)計(jì)模式的兩大主題是:()和()的討論。3.封裝分布于多個(gè)類之間的行為的模式是()A、觀察者(Observer)模式B、迭代器(Iterator)模式C、訪問者(Visitor)模式D、策略(Strategy)模式4.設(shè)計(jì)模式具有的優(yōu)點(diǎn)。()A、適應(yīng)需求變化B、程序易于理解C、減少開發(fā)過程中的代碼開發(fā)工作量D、簡化軟件系統(tǒng)的設(shè)計(jì)5.設(shè)計(jì)模式的思想根源是()基本原則的宏觀運(yùn)用,本質(zhì)上是沒有任何模式的,發(fā)現(xiàn)模式的人永遠(yuǎn)是大師,而死守模式的人,最對只能是一個(gè)工匠.6.Strategy(策略)模式對問題的解決方案是什么?以及如何實(shí)現(xiàn)?7.從模式所提供的功能性來看,模式可以分為()A、創(chuàng)建模式B、測試模式C、行為模式D、結(jié)構(gòu)模式8.在設(shè)計(jì)模式中,()的核心是緩存和共享A、門面模式B、工廠模式C、享元模式D、單例模式9.要依賴于抽象,不要依賴于具體。即針對接口編程,不要針對實(shí)現(xiàn)編程,是()的表述A、開-閉原則B、接口隔離原則C、里氏代換原則D、依賴倒轉(zhuǎn)原則10.()模式定義了一個(gè)高層接口,這個(gè)接口使得這一子系統(tǒng)更加容易使用,為子系統(tǒng)中的一組接口提供一個(gè)一致的界面,簡化了一群類的接口。11.代理模式分為哪4種:()()()()。12.Open-Close原則的含義是一個(gè)軟件實(shí)體()A、應(yīng)當(dāng)對擴(kuò)展開放,對修改關(guān)閉B、應(yīng)當(dāng)對修改開放,對擴(kuò)展關(guān)閉C、應(yīng)當(dāng)對繼承開放,對修改關(guān)閉D、以上都不對13.()模式提供一系列相關(guān)或相互依賴對象的接口而無需指定它們具體的類。14.在不破壞類封裝性的基礎(chǔ)上,使得類可以同不曾估計(jì)到的系統(tǒng)進(jìn)行交互主要體現(xiàn)在()A、適配器(Adapte)模式B、合成(Composite)模式C、原型(Prototype)模式D、橋接(Bridge)模式15.關(guān)于繼承表述錯(cuò)誤的是:()A、繼承是一種通過擴(kuò)展一個(gè)已有對象的實(shí)現(xiàn),從而獲得新功能的復(fù)用方法B、泛化類(超類)可以顯式地捕獲那些公共的屬性和方法特殊類(子類)則通過附加屬性和方法來進(jìn)行實(shí)現(xiàn)的擴(kuò)展C、破壞了封裝性,因?yàn)檫@會(huì)將父類的實(shí)現(xiàn)細(xì)節(jié)暴露給子類D、繼承本質(zhì)上是“白盒復(fù)用”,對父類的修改,不會(huì)影響到子類16.依據(jù)設(shè)計(jì)模式思想,程序開發(fā)中應(yīng)優(yōu)先使用的是()關(guān)系實(shí)現(xiàn)復(fù)用。A、委派B、繼承C、創(chuàng)建D、以上都不對17.當(dāng)我們想創(chuàng)建一個(gè)具體的對象而又不希望指定具體的類時(shí),可以使用()模式。A、創(chuàng)建型B、結(jié)構(gòu)型C、行為型D、以上都可以18.適配器模式屬于創(chuàng)建型模式。19.大多數(shù)設(shè)計(jì)模式還讓軟件更具有可修改性。20.以下屬于結(jié)構(gòu)型模式的是()。A、代理(Proxy)模式B、合成(Composite)模式C、命令(Command)模式D、觀察者(Observer)模式21.以下是模式的基本要素的是()A、名稱B、意圖C、解決方案D、參與者和協(xié)作者22.系統(tǒng)中的文本顯示類(TextView)和圖片顯示類(PictureView)都繼承了組件類(Component),分別顯示文本和圖片內(nèi)容,現(xiàn)需要構(gòu)造帶有滾動(dòng)條、或者帶有黑色邊框、或者既有滾動(dòng)條又有黑色邊框的文本顯示控件和圖片顯示控件,但希望最多只增加三個(gè)類,()設(shè)計(jì)模式可以實(shí)現(xiàn)該目的。A、外觀B、裝飾C、單件D、模板方法23.()模式將對象組合成樹形結(jié)構(gòu)以表示“部分-整體”的層次結(jié)構(gòu)。使得用戶對單個(gè)對象和組合對象的使用具有一致性。24.若系統(tǒng)中的某子模塊需要為其它模塊提供訪問不同數(shù)據(jù)庫系統(tǒng)(Oracle、SQLServer、DB2UDB等)的功能,這些數(shù)據(jù)庫系統(tǒng)提供的訪問接口有一定的差異,但訪問過程卻都是相同的,例如,先連接數(shù)據(jù)庫,再打開數(shù)據(jù)庫,最后對數(shù)據(jù)進(jìn)行查詢,()設(shè)計(jì)模式可抽象出相同的數(shù)據(jù)庫訪問過程。A、外觀B、裝飾C、單件D、模板方法25.根據(jù)以下場景說明,請選用最佳的設(shè)計(jì)模式,并說明該設(shè)計(jì)模式的原理及其優(yōu)缺點(diǎn)? 場景:你與家人商量周末自駕一同前往海灘度假,以下是你和家人的對話. 妹妹:“我想把芭比娃娃帶上車。” 我:“好好,還有呢?” 媽媽:“得把家里的個(gè)人日用品帶上車?!?我:“好好,還有呢?” 爸爸:“車上得備上幾瓶好酒?!?我:“好好,還有呢?” ........ 到了周末,我把所有的東西一件一件裝上車,一路顛簸終于到了海灘。第2卷一.參考題庫(共25題)1.下列模式中,不屬于創(chuàng)建模式的是()。A、適配器模式B、工廠方法模式C、原型模式D、以上都不是2.適配器模式,分為類的適配器和對象的適配器兩種實(shí)現(xiàn)。其中類的適配器采用的是()關(guān)系,而對象適配器采用的是()關(guān)系。3.以下哪些問題通過應(yīng)用設(shè)計(jì)模式能夠解決()A、指定對象的接口B、排除軟件BUGC、確定軟件的功能都正確實(shí)現(xiàn)D、設(shè)計(jì)應(yīng)支持變化4.Strategy模式使得算法可獨(dú)立于使用它的客戶而變化。5.請結(jié)合抽象工廠模式,說明在實(shí)際應(yīng)用中如何生成正確的對象。6.模式7.()模MVC模型式定義一個(gè)操作中的算法的骨架,而將一些步驟延遲到子類中。8.根據(jù)以下場景說明,請選用最佳的設(shè)計(jì)模式,并說明該設(shè)計(jì)模式的原理及其優(yōu)缺點(diǎn)? 場景:你在淘寶網(wǎng)上開了一間個(gè)人網(wǎng)店,你與買家之間不是面對面的現(xiàn)金交易,而是通過淘寶網(wǎng)的支付寶系統(tǒng)進(jìn)行電子貨幣虛擬交易。你網(wǎng)店的營業(yè)金額從支付寶里取,買家也把應(yīng)支付的金額交給支付寶。9.請簡述下,繼承在程序設(shè)計(jì)中,存在的缺陷?10.在面向?qū)ο蟮脑O(shè)計(jì)原則中,()表示軟件實(shí)體應(yīng)當(dāng)對擴(kuò)展開放,對修改關(guān)閉,即軟件實(shí)體應(yīng)當(dāng)在不修改的前提下擴(kuò)展。A、單一責(zé)任原則B、開放封閉原則C、里氏替換原則D、迪米特原則11.希望創(chuàng)建一個(gè)可復(fù)用的類,該類必須能夠與接口不可預(yù)訂的類協(xié)同工作,可以考慮使用()A、橋接模式B、適配器模式C、工廠模式D、裝飾模式12.創(chuàng)立型模式的根本意圖是要把()和()的責(zé)任進(jìn)行分離,從而降低系統(tǒng)的()13.靜態(tài)工廠的核心角色是()A、抽象產(chǎn)品B、具體產(chǎn)品C、靜態(tài)工廠D、消費(fèi)者14.()為另一個(gè)對象提供代表,以便控制客戶對對象的訪問。15.下列關(guān)于靜態(tài)工廠與工廠方法表述錯(cuò)誤的是:()A、兩者都滿足開閉原則:靜態(tài)工廠以ifelse方式創(chuàng)建對象,增加需求的時(shí)候會(huì)修改源代碼B、靜態(tài)工廠對具體產(chǎn)品的創(chuàng)建類別和創(chuàng)建時(shí)機(jī)的判斷是混和在一起的,這點(diǎn)在工廠方法中C、不能形成靜態(tài)工廠的繼承結(jié)構(gòu)D、在工廠方法模式中,對于存在繼承等級結(jié)構(gòu)的產(chǎn)品樹,產(chǎn)品的創(chuàng)建是通過相應(yīng)等級結(jié)構(gòu)的工廠創(chuàng)建的16.()允許一個(gè)對象基于內(nèi)部狀態(tài)而擁有不同的行為。17.設(shè)計(jì)模式的兩大主題是系統(tǒng)復(fù)用與系統(tǒng)擴(kuò)展。18.在Java中實(shí)現(xiàn)單件模式,需要私有的()()和()19.以下哪種設(shè)計(jì)模式最符合以下場景說明:() 【電視節(jié)目選擇器】 電視提供了(creates)面板和遙控器兩種節(jié)目選擇方法,都具有“下一個(gè)”和“上一個(gè)”按鈕來控制轉(zhuǎn)到不同的頻道。A、責(zé)任鏈模式(ChainofResponsibility)B、觀察者模式(Observer)C、模板方法模式(TemplateMethod)D、迭代器模式(Iterator)20.不要和陌生人說話”是()原則的通俗表述A、接口隔離B、里氏代換C、依賴倒轉(zhuǎn)D、迪米特21.什么是設(shè)計(jì)模式?設(shè)計(jì)模式的目標(biāo)是什么?22.在面向?qū)ο蟮牡脑O(shè)計(jì)原則中,()表示高層模塊不應(yīng)該依賴于低層模塊,都應(yīng)該依賴于抽象,抽象不應(yīng)該依賴于細(xì)節(jié),細(xì)節(jié)應(yīng)該依賴于抽象。A、依賴倒轉(zhuǎn)原則B、開放封閉原則C、迪米特原則D、里氏替換原則23.Strategy(策略)模式是一種定義算法家族的方法。24.以下屬于創(chuàng)建型模式的是()A、抽象工廠(AbstractFactory)模式B、合成(Composite)模式C、單例(Singleton)模式D、橋接(Bridge)模式25.面向?qū)ο笙到y(tǒng)中功能復(fù)用的最常用技術(shù)是()A、類繼承B、對象組合C、使用抽象類D、使用實(shí)現(xiàn)類第3卷一.參考題庫(共25題)1.GOF模式分為幾種,每種包含哪些模式?2.()模式包裝對象,以控制對比對象的訪問。3.對于某些類來說,只有一個(gè)實(shí)例是非常重要的,例如,系統(tǒng)中可以有都種類型的打印機(jī),但是只能有一個(gè)打印機(jī)假脫機(jī),只應(yīng)該一個(gè)文件系統(tǒng)和一個(gè)窗口管理器,為此,可以使用()。A、工廠模式B、享元模式C、單例模式D、外觀模式4.異常處理機(jī)制可理解為哪一種行為模式()A、觀察者(Observer)模式B、迭代器(Iterator)模式C、職責(zé)鏈(ChainofResponsibility)模式D、策略(Strategy)模式5.當(dāng)需要強(qiáng)調(diào)一系列相關(guān)產(chǎn)品對象的設(shè)計(jì)以便進(jìn)行聯(lián)合使用,可以考慮使用()。A、工廠模式B、單例模式C、建造者模式D、原型模式6.在一個(gè)國際電子零售系統(tǒng)中,需要考慮為不同的國家的消費(fèi)者的定單計(jì)算稅費(fèi)問題,請用模式的方法考慮如何解決該問題。7.工廠模式分為(),(),()三種類型。8.以下關(guān)于創(chuàng)建型模式說法正確的是()A、創(chuàng)建型模式關(guān)注的是對象的創(chuàng)建B、創(chuàng)建型模式關(guān)注的是功能的實(shí)現(xiàn)C、創(chuàng)建型模式關(guān)注的是組織類和對象的常用方法D、創(chuàng)建型模式關(guān)注的是對象間的協(xié)作9.行為類模式使用()在類間分派行為。A、接口B、繼承機(jī)制C、對象組合D、委托10.關(guān)于訪問者模式(Visitor)的適用性以下哪些是正確的()A、一個(gè)對象的結(jié)構(gòu)包含多個(gè)不同接口的對象,并且需要根據(jù)具體對象作不同的處理B、對結(jié)構(gòu)中的對象有很多不同且沒有聯(lián)系的處理,因此需要避免操作將類分離C、類中定義的對象結(jié)構(gòu)很少改變,但需要以常地定義處理結(jié)構(gòu)的新操作D、需要對行為的算法作很多變動(dòng)11.裝飾著模式為對象加上()而代理模式則是()。12.根據(jù)以下場景說明,請選用最佳的設(shè)計(jì)模式,并說明該設(shè)計(jì)模式的原理及其優(yōu)缺點(diǎn)? 場景:你拿出上次旅行時(shí)所拍攝的個(gè)人寫真照片,但你發(fā)覺你看來看去都不順眼,于是你到禮品店買了個(gè)相框,結(jié)果你發(fā)現(xiàn)相框整體感還是達(dá)不到你的要求,所以你在相框上貼了一些小東西。經(jīng)過你一番的努力,相框的整體感覺終于符合你的期望了。13.面向?qū)ο螅∣O)的原則有那些?14.設(shè)計(jì)模式中一般都遵循的原則有什么?15.四人團(tuán)針對“創(chuàng)建優(yōu)秀面向?qū)ο笤O(shè)計(jì)”建議了哪些策略?16.結(jié)構(gòu)型模式中最體現(xiàn)擴(kuò)展性的幾種模式是()A、適配器(Adapte)模式B、合成(Composite)模式C、裝飾(Decorator)模式D、橋接(Bridge)模式17.當(dāng)需要支持日志修改時(shí),可以考慮使用()A、命令模式B、工廠模式C、單例模式D、適配器模式18.關(guān)于設(shè)計(jì)模式本質(zhì)的說法,以下哪個(gè)是正確的()A、設(shè)計(jì)模式利用類的繼承來實(shí)現(xiàn)功能擴(kuò)展B、設(shè)計(jì)模式利用類的組合來實(shí)現(xiàn)功能擴(kuò)展C、設(shè)計(jì)模式就是在不修改原有類的基礎(chǔ)上通過新增類來實(shí)現(xiàn)功能擴(kuò)展或功能變更D、設(shè)計(jì)模式就是利用類的繼承和組合來實(shí)現(xiàn)功能擴(kuò)展或功能變更19.下列模式中,屬于行為模式的是()A、工廠模式B、觀察者C、適配器D、以上都是20.面向?qū)ο蟮牧鶙l基本原則包括:開閉原則,里式代換原則,合成聚合原則以及(),(),(),()21.抽象不應(yīng)該依賴于細(xì)節(jié),細(xì)節(jié)應(yīng)當(dāng)依賴于抽象。22.對于依賴倒轉(zhuǎn)的表述錯(cuò)誤的是()A、依賴于抽象而不依賴于具體,也就是針對接口編程B、依賴倒轉(zhuǎn)的接口并非語法意義上的接口,而是,一個(gè)類對其他對象進(jìn)行調(diào)用時(shí),所知道的方法集合C、從選項(xiàng)B的角度論述,一個(gè)對象可以有多個(gè)接口D、實(shí)現(xiàn)了同一接口的對象,可以在運(yùn)行期間,順利地進(jìn)行替換而且不必知道所示用的對象是那個(gè)實(shí)現(xiàn)類的實(shí)例E、此題沒有正確答案23.設(shè)計(jì)模式24.觀察者和可觀察者之間用()結(jié)合。25.您現(xiàn)負(fù)責(zé)通過文件操作的開發(fā)框架設(shè)計(jì)任務(wù)。經(jīng)過調(diào)研后,您發(fā)現(xiàn)公司已經(jīng)封裝好一個(gè)類專門用于提供txt,XML,Word,Excel文件操作的功能。為了使得開發(fā)框架能最大的程度的復(fù)用,您該如何設(shè)計(jì)您的開發(fā)框架。第1卷參考答案一.參考題庫1.參考答案:發(fā)出請求;執(zhí)行請求2.參考答案:對象組合;類繼承3.參考答案:C4.參考答案:A5.參考答案:開閉6.參考答案: 解決方案是:將算法的選擇和算法的實(shí)現(xiàn)相分離。讓客戶可以基于場景做出選擇。 實(shí)現(xiàn):讓使用算法的類包含一個(gè)抽象類,抽象類中有一個(gè)抽象方法指定如何調(diào)用算法。每個(gè)派生類根據(jù)需要實(shí)現(xiàn)算法。7.參考答案:A,C,D8.參考答案:C9.參考答案:D10.參考答案:外觀11.參考答案:虛擬代理;遠(yuǎn)程代理;安全代理;聰明引用12.參考答案:A13.參考答案:抽象工廠14.參考答案:A,D15.參考答案:D16.參考答案:A17.參考答案:A18.參考答案:錯(cuò)誤19.參考答案:正確20.參考答案:A,B21.參考答案:A,B,C,D22.參考答案:B23.參考答案:組合24.參考答案:D25.參考答案: 迭代子模式:迭代子模式可以順序訪問一個(gè)聚集中的元素而不必暴露聚集的內(nèi)部表象。多個(gè)對象聚在一起形成的總體稱之為聚集,聚集對象是能夠包容一組對象的容器對象。 迭代子模式將迭代邏輯封裝到一個(gè)獨(dú)立的子對象中,從而與聚集本身隔開。迭代子模式簡化了聚集的界面。每一個(gè)聚集對象都可以有一個(gè)或一個(gè)以上的迭代子對象,每一個(gè)迭代子的迭代狀態(tài)可以是彼此獨(dú)立的。 迭代算法可以獨(dú)立于聚集角色變化。第2卷參考答案一.參考題庫1.參考答案:A2.參考答案:繼承;組合聚合3.參考答案:A,D4.參考答案:正確5.參考答案: 決定需要哪個(gè)工廠對象實(shí)際上與確定使用哪一組對象是相同的。 例如,在驅(qū)動(dòng)程序問題中,有一組低分辨率動(dòng)程序和一組高分辨率驅(qū)動(dòng)程序,怎樣才能知道自己需要哪一組呢?在類似這樣的例子中,很可能通過一個(gè)配置文件獲知這一信息。 然后可以編寫幾行代碼,根據(jù)配置信息將合適的工廠對象實(shí)例化。 還可以使用AbstractFactory模式,不同應(yīng)用程序都使用同一子系統(tǒng)。 在這種情況下,工廠對象將傳給子系統(tǒng),告訴子系統(tǒng)將要使用哪些對象,此時(shí),通常主系統(tǒng)知道子系統(tǒng)需要那一組對象,在調(diào)用子系統(tǒng)之前,將實(shí)例化正確的工廠對象。6.參考答案:就是解決某一類問題的方法論。把解決某類問題的方法總結(jié)歸納到理論高度,那就是模式。7.參考答案:模板8.參考答案:適配器模式,一個(gè)適配允許通常因?yàn)榻涌诓患嫒荻荒茉谝黄鸸ぷ鞯念惞ぷ髟谝黄?,做法是將類自己的接口包裹在一個(gè)已存在的類中。9.參考答案:因?yàn)樵谑褂美^承時(shí),父類的任何改變都可能影響子類的行為,沒有助于保持每個(gè)類的單一職責(zé)原則。10.參考答案:B11.參考答案:B12.參考答案:對象的創(chuàng)建;使用分離;耦合度13.參考答案:A14.參考答案:代理模式15.參考答案:A16.參考答案:狀態(tài)模式17.參考答案:正確18.參考答案:構(gòu)造器;一個(gè)靜態(tài)方法;一個(gè)靜態(tài)變量19.參考答案:D20.參考答案:D21.參考答案:設(shè)計(jì)模式通常是對于某一類的軟件設(shè)計(jì)問題的可重用的解決方案,將設(shè)計(jì)模式引入軟件設(shè)計(jì)和開發(fā)過程,其目的就在于要充分利用已有的軟件開發(fā)經(jīng)驗(yàn)。22.參考答案:A23.參考答案:正確24.參考答案:A,C25.參考答案:A,B第3卷參考答案一.參考題庫1.參考答案: GOF模式分為分為3種。 創(chuàng)建型設(shè)計(jì)模式:簡單工廠模式,工廠方法模式,抽象工廠模式,建造者模式,原型模式,單例模式; 結(jié)構(gòu)型設(shè)計(jì)模式:適配器模式,橋接模式,組合模式,裝飾模式,外觀模式,輕量級模式,代理模式; 行為性設(shè)計(jì)模式:責(zé)任鏈模式,命令模式,解釋器模式,迭代器模式,中介者模式,備忘錄模式,觀察者模式,狀態(tài)模式,策略者模式,模板方法模式,訪問者模式。2.參考答案:代理3.參考答案:C4.參考答案:C5.參考答案:A6.參考答案:通過Strategy模式,可以將這些規(guī)則封裝在一個(gè)抽象類中,然后派生出一系列的具體類。通過從一個(gè)抽象派生類執(zhí)行算法的所有不同方式,主模塊就無需再操心實(shí)際使用的是哪一個(gè),這樣能夠允許

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論