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頁,還剩9頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

2024年大學(xué)試題(計(jì)算機(jī)科學(xué))-設(shè)計(jì)模式歷年高頻考點(diǎn)試卷專家薈萃含答案(圖片大小可自由調(diào)整)第1卷一.參考題庫(共25題)1.()定義了算法的步驟,把這些步驟的實(shí)現(xiàn)延遲到了子類。2.在設(shè)計(jì)模式中,()的核心是緩存和共享A、門面模式B、工廠模式C、享元模式D、單例模式3.Open-Close原則的含義是一個(gè)軟件實(shí)體應(yīng)當(dāng)對(duì)擴(kuò)展開放,對(duì)修改關(guān)閉。4.以下哪個(gè)設(shè)計(jì)模式是著重于一步步構(gòu)造一個(gè)復(fù)雜對(duì)象并且是最后步驟才將返回此對(duì)象?()A、簡單工廠模式(SimpleFactory)B、抽象工廠模式(AbstractFactory)C、建造者模式(Builder)D、單例模式(Singleton)5.Strategy(策略)模式是一種定義算法家族的方法。6.設(shè)計(jì)模式的基本要素有(),(),(),(),(),(),()7.Observer(觀察者)模式適用于()A、當(dāng)一個(gè)抽象模型存在兩個(gè)方面,其中一個(gè)方面依賴于另一方面,將這二者封裝在獨(dú)立的對(duì)象中以使它們可以各自獨(dú)立地改變和復(fù)用B、當(dāng)對(duì)一個(gè)對(duì)象的改變需要同時(shí)改變其它對(duì)象,而不知道具體有多少對(duì)象有待改變時(shí)C、當(dāng)一個(gè)對(duì)象必須通知其它對(duì)象,而它又不能假定其它對(duì)象是誰也就是說你不希望這些對(duì)象是緊密耦合的D、一個(gè)對(duì)象結(jié)構(gòu)包含很多類對(duì)象,它們有不同的接口,而想對(duì)這些對(duì)象實(shí)施一些依賴于其具體類的操作8.以下哪種設(shè)計(jì)模式最符合以下場景說明:() 【電視節(jié)目選擇器】 電視提供了(creates)面板和遙控器兩種節(jié)目選擇方法,都具有“下一個(gè)”和“上一個(gè)”按鈕來控制轉(zhuǎn)到不同的頻道。A、責(zé)任鏈模式(ChainofResponsibility)B、觀察者模式(Observer)C、模板方法模式(TemplateMethod)D、迭代器模式(Iterator)9.當(dāng)我們想創(chuàng)建一個(gè)具體的對(duì)象而又不希望指定具體的類時(shí),可以使用()模式。A、創(chuàng)建型B、結(jié)構(gòu)型C、行為型D、以上都可以10.在Java中實(shí)現(xiàn)單件模式,需要私有的()()和()11.設(shè)計(jì)模式的兩大主題是:()和()的討論。12.()為另一個(gè)對(duì)象提供代表,以便控制客戶對(duì)對(duì)象的訪問。13.Decorator(裝飾)模式的效果是什么?14.簡述耦合分為幾種?15.設(shè)計(jì)模式16.模式17.抽象不應(yīng)該依賴于細(xì)節(jié),細(xì)節(jié)應(yīng)當(dāng)依賴于抽象。18.()模式定義對(duì)象間的一種一對(duì)多的依賴關(guān)系,當(dāng)一個(gè)對(duì)象的狀態(tài)發(fā)生改變時(shí),所有依賴于它的對(duì)象都得到通知并被自動(dòng)更新,也就是讓對(duì)象能在狀態(tài)改變時(shí)被通知。19.根據(jù)以下場景說明,請(qǐng)選用最佳的設(shè)計(jì)模式,并說明該設(shè)計(jì)模式的原理及其優(yōu)缺點(diǎn)? 場景:你與家人商量周末自駕一同前往海灘度假,以下是你和家人的對(duì)話. 妹妹:“我想把芭比娃娃帶上車?!?我:“好好,還有呢?” 媽媽:“得把家里的個(gè)人日用品帶上車?!?我:“好好,還有呢?” 爸爸:“車上得備上幾瓶好酒。” 我:“好好,還有呢?” ........ 到了周末,我把所有的東西一件一件裝上車,一路顛簸終于到了海灘。20.對(duì)象適配器模式是()原則的典型應(yīng)用。A、合成聚合復(fù)用原則B、里式代換原則C、依賴倒轉(zhuǎn)原則D、迪米特法則21.請(qǐng)結(jié)合抽象工廠模式,說明在實(shí)際應(yīng)用中如何生成正確的對(duì)象。22.Decorator(裝飾)模式的意圖是為一個(gè)對(duì)象連接附加的職責(zé)。23.行為類模式使用()在類間分派行為。A、接口B、繼承機(jī)制C、對(duì)象組合D、委托24.根據(jù)以下場景說明,請(qǐng)選用最佳的設(shè)計(jì)模式,并說明該設(shè)計(jì)模式的原理及其優(yōu)缺點(diǎn)? 場景:你在淘寶網(wǎng)上開了一間個(gè)人網(wǎng)店,你與買家之間不是面對(duì)面的現(xiàn)金交易,而是通過淘寶網(wǎng)的支付寶系統(tǒng)進(jìn)行電子貨幣虛擬交易。你網(wǎng)店的營業(yè)金額從支付寶里取,買家也把應(yīng)支付的金額交給支付寶。25.以下哪個(gè)模式是利用一個(gè)對(duì)象,快速地生成一批對(duì)象()A、抽象工廠(AbstractFactory)模式B、合成(Composite)模式C、原型(Prototype)模式D、橋接(Bridge)模式第2卷一.參考題庫(共25題)1.在設(shè)計(jì)模式中,“效果”只是指“原因和結(jié)果”。2.簡述下,創(chuàng)建型模式一共有多少種,分別為哪些?工廠方法模式、抽象工廠模式與建造者模式,有什么區(qū)別,如何區(qū)分應(yīng)用在具體事例中。并請(qǐng)舉例說明。3.常用的描述設(shè)計(jì)模式的格式有()A、意圖B、動(dòng)機(jī)C、適用性D、結(jié)構(gòu)4.按照四人團(tuán)的說法,Strategy策略模式的基本思想是什么?5.設(shè)計(jì)模式使代碼編制不能真正工程化。6.設(shè)計(jì)模式一般用來解決什么樣的問題()A、同一問題的不同表相B、不同問題的同一表相C、不同問題的不同表相D、以上都不是7.根據(jù)以下場景說明,請(qǐng)選用最佳的設(shè)計(jì)模式,并說明該設(shè)計(jì)模式的原理及其優(yōu)缺點(diǎn)? 場景:你拿出上次旅行時(shí)所拍攝的個(gè)人寫真照片,但你發(fā)覺你看來看去都不順眼,于是你到禮品店買了個(gè)相框,結(jié)果你發(fā)現(xiàn)相框整體感還是達(dá)不到你的要求,所以你在相框上貼了一些小東西。經(jīng)過你一番的努力,相框的整體感覺終于符合你的期望了。8.設(shè)計(jì)模式具有哪三大特點(diǎn)?9.創(chuàng)立型模式的根本意圖是要把()和()的責(zé)任進(jìn)行分離,從而降低系統(tǒng)的()10.簡述下,結(jié)構(gòu)型模式一共有多少種,分別為哪些?代理模式、裝飾模式和適配器模式,有什么區(qū)別,如何區(qū)分應(yīng)用在具體事例中。并請(qǐng)舉例說明。11.()模式確保某一個(gè)類僅有一個(gè)實(shí)例,并自行實(shí)例化并向整個(gè)系統(tǒng)提供這個(gè)實(shí)例。12.Open-Close原則的含義是一個(gè)軟件實(shí)體()A、應(yīng)當(dāng)對(duì)擴(kuò)展開放,對(duì)修改關(guān)閉B、應(yīng)當(dāng)對(duì)修改開放,對(duì)擴(kuò)展關(guān)閉C、應(yīng)當(dāng)對(duì)繼承開放,對(duì)修改關(guān)閉D、以上都不對(duì)13.()模式提供一系列相關(guān)或相互依賴對(duì)象的接口而無需指定它們具體的類。14.在不破壞類封裝性的基礎(chǔ)上,使得類可以同不曾估計(jì)到的系統(tǒng)進(jìn)行交互。主要體現(xiàn)在()。A、適配器(Adapte)模式B、合成(Composite)模式C、原型(Prototype)模式D、橋接(Bridge)模式15.設(shè)計(jì)模式的基本要素有哪些?16.對(duì)象適配器模式是合成聚合復(fù)用原則的典型應(yīng)用。17.抽象工廠方法使用()使對(duì)象的創(chuàng)建被實(shí)現(xiàn)在工廠接口所暴露出來的方法中。18.以下哪些問題通過應(yīng)用設(shè)計(jì)模式能夠解決()A、指定對(duì)象的接口B、排除軟件BUGC、確定軟件的功能都正確實(shí)現(xiàn)D、設(shè)計(jì)應(yīng)支持變化19.()模MVC模型式定義一個(gè)操作中的算法的骨架,而將一些步驟延遲到子類中。20.以下哪些設(shè)計(jì)模式都可以用來將抽象部分與實(shí)現(xiàn)部分分離()A、適配器模式(Adapter)B、裝飾模式(Decorator)C、橋接模式(Bridge)D、代理模式(Proxy)21.您現(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ā)框架。22.依據(jù)設(shè)計(jì)模式思想,程序開發(fā)中應(yīng)優(yōu)先使用的是()關(guān)系實(shí)現(xiàn)復(fù)用。A、委派B、繼承C、創(chuàng)建D、以上都不對(duì)23.關(guān)于外觀模式(Facade)說法正確的是?()A、提供一個(gè)統(tǒng)一的接口去訪問多個(gè)子系統(tǒng)的多個(gè)不同的接口B、提供了一個(gè)簡單且公用的接口去處理復(fù)雜的子系統(tǒng),并且沒有減少子系統(tǒng)的功能C、限制了客戶的自由,減少了可變性D、客戶與抽象的實(shí)現(xiàn)類中存在若干依賴24.請(qǐng)說出以下是運(yùn)用何種設(shè)計(jì)模式() A、享元模式(Flyweight)B、工廠模式(Factory)C、備忘錄模式(Memento)D、組合模式(Composite)25.GOF設(shè)計(jì)模式按照模式的目的可分為哪三類?第3卷一.參考題庫(共25題)1.構(gòu)造者的的退化模式是通過合并()角色完成退化的。A、抽象產(chǎn)品B、產(chǎn)品C、創(chuàng)建者D、使用者2.()模式封裝對(duì)象,并提供不同的接口。3.結(jié)構(gòu)型模式中最體現(xiàn)擴(kuò)展性的幾種模式是()A、適配器(Adapte)模式B、合成(Composite)模式C、裝飾(Decorator)模式D、橋接(Bridge)模式4.Strategy模式的意圖是什么嗎?它有哪些效果?5.設(shè)計(jì)模式的兩大主題是系統(tǒng)復(fù)用與系統(tǒng)擴(kuò)展。6.當(dāng)需要在不同時(shí)刻指定、排列和執(zhí)行請(qǐng)求是,可以考慮使用()。A、命令模式B、策略模式C、適配器模式D、責(zé)任鏈模式7.以下哪個(gè)設(shè)計(jì)模式最符合以下的場景說明:() 能使客戶端獨(dú)立于產(chǎn)品的創(chuàng)建過程,并且在系統(tǒng)中引入新產(chǎn)品時(shí)無需對(duì)客戶端進(jìn)行修改。A、工廠模式(Factory)B、狀態(tài)模式(State)C、享元模式(Flyweight)D、原型模式(Prototype)8.大多數(shù)設(shè)計(jì)模式還讓軟件更具有可修改性。9.代理模式分為哪4種:()()()()。10.Java的異常處理機(jī)制可理解為哪一種行為模式()A、觀察者(Observer)模式B、迭代器(Iterator)模式C、職責(zé)鏈(ChainofResponsibility)模式D、策略(Strategy)模式11.常用的設(shè)計(jì)模式可分為過程型、創(chuàng)建型和結(jié)構(gòu)型。12.當(dāng)一個(gè)抽象模型有兩個(gè)方面,其中一個(gè)方面依賴于另一方面,將這兩者封裝在獨(dú)立的對(duì)象中以使它們可以各自獨(dú)立地改變和復(fù)用,可以考慮使用()A、觀察者模式B、命令模式C、適配器模式D、單例模式13.當(dāng)需要一個(gè)現(xiàn)有的類而其接口不符合需求時(shí),可使用()模式。14.Strategy(策略)模式是建立在哪些原則的基礎(chǔ)上?15.()模式定義了一個(gè)高層接口,這個(gè)接口使得這一子系統(tǒng)更加容易使用,為子系統(tǒng)中的一組接口提供一個(gè)一致的界面,簡化了一群類的接口。16.門面模式是()法則的典型運(yùn)用。17.請(qǐng)結(jié)合實(shí)際應(yīng)用說明Decorator模式是怎樣對(duì)問題按功能進(jìn)行分解?18.裝飾著模式為對(duì)象加上()而代理模式則是()。19.觀察者和可觀察者之間用()結(jié)合。20.開閉原則:(),()。21.工廠方法使用()把對(duì)象的創(chuàng)建委托給子類,子類實(shí)現(xiàn)了工廠方法來創(chuàng)建對(duì)象。22.根據(jù)你的理解,請(qǐng)你談?wù)劷Y(jié)構(gòu)型和行為型模式的區(qū)別,并結(jié)合實(shí)際的應(yīng)用舉例說明。23.()允許一個(gè)對(duì)象基于內(nèi)部狀態(tài)而擁有不同的行為。24.MVC模型的基本工作原理是基于()模式,實(shí)現(xiàn)是基于()模式。25.當(dāng)需要強(qiáng)調(diào)一系列相關(guān)產(chǎn)品對(duì)象的設(shè)計(jì)以便進(jìn)行聯(lián)合使用,可以考慮使用()。A、工廠模式B、單例模式C、建造者模式D、原型模式第1卷參考答案一.參考題庫1.參考答案:模板方法2.參考答案:C3.參考答案:正確4.參考答案:C5.參考答案:正確6.參考答案:名字;意圖;問題;解決方案;參與者與協(xié)作者;實(shí)現(xiàn);一般性結(jié)構(gòu)7.參考答案:C8.參考答案:D9.參考答案:A10.參考答案:構(gòu)造器;一個(gè)靜態(tài)方法;一個(gè)靜態(tài)變量11.參考答案:對(duì)象組合;類繼承12.參考答案:代理模式13.參考答案: 被添加的功能屬于小的對(duì)象。好處是可以在ConcreteComponent對(duì)象的功能之前或之后動(dòng)態(tài)添加功能。雖然一個(gè)裝飾者可以在被裝飾者之前或之后添加功能,但對(duì)象鏈總是以ConcreteComponent對(duì)象結(jié)束。14.參考答案: (1)內(nèi)容耦合 (2)公共耦合 (3)外部耦合 (4)控制耦合 (5)標(biāo)記耦合 (6)數(shù)據(jù)耦合 (7)非直接耦合15.參考答案:是一套被反復(fù)使用、多數(shù)人知曉的、經(jīng)過分類編目的、代碼設(shè)計(jì)經(jīng)驗(yàn)的總結(jié)。使用設(shè)計(jì)模式是為了可重用代碼、讓代碼更容易被他人理解、保證代碼可靠性。16.參考答案:就是解決某一類問題的方法論。把解決某類問題的方法總結(jié)歸納到理論高度,那就是模式。17.參考答案:錯(cuò)誤18.參考答案:觀察者19.參考答案: 迭代子模式:迭代子模式可以順序訪問一個(gè)聚集中的元素而不必暴露聚集的內(nèi)部表象。多個(gè)對(duì)象聚在一起形成的總體稱之為聚集,聚集對(duì)象是能夠包容一組對(duì)象的容器對(duì)象。 迭代子模式將迭代邏輯封裝到一個(gè)獨(dú)立的子對(duì)象中,從而與聚集本身隔開。迭代子模式簡化了聚集的界面。每一個(gè)聚集對(duì)象都可以有一個(gè)或一個(gè)以上的迭代子對(duì)象,每一個(gè)迭代子的迭代狀態(tài)可以是彼此獨(dú)立的。 迭代算法可以獨(dú)立于聚集角色變化。20.參考答案:A21.參考答案: 決定需要哪個(gè)工廠對(duì)象實(shí)際上與確定使用哪一組對(duì)象是相同的。 例如,在驅(qū)動(dòng)程序問題中,有一組低分辨率動(dòng)程序和一組高分辨率驅(qū)動(dòng)程序,怎樣才能知道自己需要哪一組呢?在類似這樣的例子中,很可能通過一個(gè)配置文件獲知這一信息。 然后可以編寫幾行代碼,根據(jù)配置信息將合適的工廠對(duì)象實(shí)例化。 還可以使用AbstractFactory模式,不同應(yīng)用程序都使用同一子系統(tǒng)。 在這種情況下,工廠對(duì)象將傳給子系統(tǒng),告訴子系統(tǒng)將要使用哪些對(duì)象,此時(shí),通常主系統(tǒng)知道子系統(tǒng)需要那一組對(duì)象,在調(diào)用子系統(tǒng)之前,將實(shí)例化正確的工廠對(duì)象。22.參考答案:錯(cuò)誤23.參考答案:B24.參考答案:適配器模式,一個(gè)適配允許通常因?yàn)榻涌诓患嫒荻荒茉谝黄鸸ぷ鞯念惞ぷ髟谝黄?,做法是將類自己的接口包裹在一個(gè)已存在的類中。25.參考答案:C第2卷參考答案一.參考題庫1.參考答案:正確2.參考答案: 一共6鐘,分別是簡單工廠,工廠方法模式,抽象工廠模式,建造者模式,原型模式,單例模式。 工廠只不過是對(duì)一個(gè)產(chǎn)品的封裝,而抽象工廠是對(duì)一系列相關(guān)產(chǎn)品的封裝,建造者也是一種封裝,只是它封裝的是過程。3.參考答案:A,B,C,D4.參考答案:定義一系列的算法,把它們一個(gè)個(gè)封裝起來,并且使它們可相互替換,使算法可獨(dú)立于使用它的客戶而變化。5.參考答案:錯(cuò)誤6.參考答案:A7.參考答案: 裝飾模式:裝飾模式以對(duì)客戶端透明的方式擴(kuò)展對(duì)象的功能,是繼承關(guān)系的一個(gè)替代方案,提供比繼承更多的靈活性。 動(dòng)態(tài)給一個(gè)對(duì)象增加功能,這些功能可以再動(dòng)態(tài)的撤消。增加由一些基本功能的排列組合而產(chǎn)生的非常大量的功能。8.參考答案: (1)在特定的場景下有可重用性,對(duì)相同類型不同問題的環(huán)境,其解決方案都有效。 (2)可傳授性,即問題出現(xiàn)的機(jī)會(huì)很多,解決問題的方案相同,人們相對(duì)可以接受。 (3)有表示模式的名稱。9.參考答案:對(duì)象的創(chuàng)建;使用分離;耦合度10.參考答案: 一共有7種,分別為組合模式、裝飾模式、外觀模式、享元模式、代理模式、適配器模式、橋接模式; 1.適配器模式是將一個(gè)類(a)通過某種方式轉(zhuǎn)換成另一個(gè)類(b). 2.裝飾模式是在一個(gè)原有類(a)的基礎(chǔ)之上增加了某些新的功能變成另一個(gè)類(b). 3.代理模式是將一個(gè)類(a)轉(zhuǎn)換成具體的操作類(b).11.參考答案:單例12.參考答案:A13.參考答案:抽象工廠14.參考答案:A,D15.參考答案:名稱,意圖,問題,解決方案,參與者和協(xié)作者,效果,實(shí)現(xiàn),GOF參考。16.參考答案:正確17.參考答案:對(duì)象組合18.參考答案:A,D19.參考答案:模板20.參考答案:C21.參考答案: 現(xiàn)提出幾點(diǎn)技術(shù)意見: 1.本框架提供對(duì)各類文件(txt,XML,Word,Excel)的通用讀取和寫入功能。 2.在文件讀寫時(shí),能支持字符轉(zhuǎn)碼和字符轉(zhuǎn)字節(jié)這兩個(gè)功能的熱插拔。 3.在文件讀寫時(shí),能支持處理過程動(dòng)作自定義,即:在文件讀寫正在進(jìn)行中能加入業(yè)務(wù)功能。例如:每讀取100個(gè)字節(jié),則滾動(dòng)條增加一格。22.參考答案:A23.參考答案:A,B24.參考答案:A25.參考答案: 行為型,結(jié)構(gòu)型,創(chuàng)建型第3卷參考答案一.參考題庫1.參考答案:C2.參考答案:適配器3.參考答案:C4.參考答案: 意圖是讓你可以使用不同的業(yè)務(wù)規(guī)則或算法-----取決于它們出場的場景。 效果有:Strategy(策略)模式定義了一系列的算法; Switch語句或條件語句得到了避免; 你必須以相同的方式調(diào)用所有的算法(它們必須擁有相同的接口)Concrete

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論