2024年大學試題(計算機科學)-設(shè)計模式筆試歷年真題薈萃含答案_第1頁
2024年大學試題(計算機科學)-設(shè)計模式筆試歷年真題薈萃含答案_第2頁
2024年大學試題(計算機科學)-設(shè)計模式筆試歷年真題薈萃含答案_第3頁
2024年大學試題(計算機科學)-設(shè)計模式筆試歷年真題薈萃含答案_第4頁
2024年大學試題(計算機科學)-設(shè)計模式筆試歷年真題薈萃含答案_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

2024年大學試題(計算機科學)-設(shè)計模式筆試歷年真題薈萃含答案(圖片大小可自由調(diào)整)第1卷一.參考題庫(共30題)1.簡述針對接口編程,不針對實現(xiàn)編程的意義。2.工廠方法使用()把對象的創(chuàng)建委托給子類,子類實現(xiàn)了工廠方法來創(chuàng)建對象。3.常用的設(shè)計模式可分為過程型、創(chuàng)建型和結(jié)構(gòu)型。4.設(shè)計模式的思想根源是()基本原則的宏觀運用,本質(zhì)上是沒有任何模式的,發(fā)現(xiàn)模式的人永遠是大師,而死守模式的人,最對只能是一個工匠.5.當我們想創(chuàng)建一個具體的對象而又不希望指定具體的類時,可以使用()模式。A、創(chuàng)建型B、結(jié)構(gòu)型C、行為型D、以上都可以6.Decorator(裝飾)模式的意圖是為一個對象連接附加的職責。7.()為另一個對象提供代表,以便控制客戶對對象的訪問。8.()模式提供一系列相關(guān)或相互依賴對象的接口而無需指定它們具體的類。9.適配器模式,分為類的適配器和對象的適配器兩種實現(xiàn)。其中類的適配器采用的是()關(guān)系,而對象適配器采用的是()關(guān)系。10.請說出以下是運用何種設(shè)計模式() A、享元模式(Flyweight)B、工廠模式(Factory)C、備忘錄模式(Memento)D、組合模式(Composite)11.請結(jié)合抽象工廠模式,說明在實際應(yīng)用中如何生成正確的對象。12.()模式包裝對象,以控制對比對象的訪問。13.當需要在不同時刻指定、排列和執(zhí)行請求是,可以考慮使用()。A、命令模式B、策略模式C、適配器模式D、責任鏈模式14.Strategy(策略)模式對問題的解決方案是什么?以及如何實現(xiàn)?15.單例模式中,兩個基本要點()和單子類自己提供單例A、構(gòu)造函數(shù)私有B、唯一實例C、靜態(tài)工廠方法D、以上都不對16.設(shè)計模式一般用來解決什么樣的問題()A、同一問題的不同表相B、不同問題的同一表相C、不同問題的不同表相D、以上都不是17.設(shè)計模式的兩大主題是系統(tǒng)復(fù)用與系統(tǒng)擴展。18.關(guān)于繼承表述錯誤的是:()A、繼承是一種通過擴展一個已有對象的實現(xiàn),從而獲得新功能的復(fù)用方法B、泛化類(超類)可以顯式地捕獲那些公共的屬性和方法特殊類(子類)則通過附加屬性和方法來進行實現(xiàn)的擴展C、破壞了封裝性,因為這會將父類的實現(xiàn)細節(jié)暴露給子類D、繼承本質(zhì)上是“白盒復(fù)用”,對父類的修改,不會影響到子類19.根據(jù)以下場景說明,請選用最佳的設(shè)計模式,并說明該設(shè)計模式的原理及其優(yōu)缺點? 場景:你拿出上次旅行時所拍攝的個人寫真照片,但你發(fā)覺你看來看去都不順眼,于是你到禮品店買了個相框,結(jié)果你發(fā)現(xiàn)相框整體感還是達不到你的要求,所以你在相框上貼了一些小東西。經(jīng)過你一番的努力,相框的整體感覺終于符合你的期望了。20.對于某些類來說,只有一個實例是非常重要的,例如,系統(tǒng)中可以有都種類型的打印機,但是只能有一個打印機假脫機,只應(yīng)該一個文件系統(tǒng)和一個窗口管理器,為此,可以使用()。A、工廠模式B、享元模式C、單例模式D、外觀模式21.面向?qū)ο蟮牧鶙l基本原則包括:開閉原則,里式代換原則,合成聚合原則以及(),(),(),()22.Decorator(裝飾)模式的解決方案是什么?如何實現(xiàn)?23.設(shè)計模式中一般都遵循的原則有什么?24.“不要和陌生人說話”是()原則的通俗表述A、接口隔離B、里氏代換C、依賴倒轉(zhuǎn)D、迪米特:一個對象應(yīng)對其他對象盡可能少的了解25.不要和陌生人說話”是()原則的通俗表述A、接口隔離B、里氏代換C、依賴倒轉(zhuǎn)D、迪米特26.您現(xiàn)負責通過文件操作的開發(fā)框架設(shè)計任務(wù)。經(jīng)過調(diào)研后,您發(fā)現(xiàn)公司已經(jīng)封裝好一個類專門用于提供txt,XML,Word,Excel文件操作的功能。為了使得開發(fā)框架能最大的程度的復(fù)用,您該如何設(shè)計您的開發(fā)框架。27.在不破壞類封裝性的基礎(chǔ)上,使得類可以同不曾估計到的系統(tǒng)進行交互。主要體現(xiàn)在()。A、適配器(Adapte)模式B、合成(Composite)模式C、原型(Prototype)模式D、橋接(Bridge)模式28.觀察者和可觀察者之間用()結(jié)合。29.異常處理機制可理解為哪一種行為模式()A、觀察者(Observer)模式B、迭代器(Iterator)模式C、職責鏈(ChainofResponsibility)模式D、策略(Strategy)模式30.()允許一個對象基于內(nèi)部狀態(tài)而擁有不同的行為。第1卷參考答案一.參考題庫1.參考答案: 主題與觀察者都是用接口:觀察者利用主題的接口向主題注冊,而主題利用觀察者接口通知觀察者。 這樣可以讓兩者之間運作正常,又同時具有松耦合的優(yōu)點。2.參考答案:繼承3.參考答案:錯誤4.參考答案:開閉5.參考答案:A6.參考答案:錯誤7.參考答案:代理模式8.參考答案:抽象工廠9.參考答案:繼承;組合聚合10.參考答案:A11.參考答案: 決定需要哪個工廠對象實際上與確定使用哪一組對象是相同的。 例如,在驅(qū)動程序問題中,有一組低分辨率動程序和一組高分辨率驅(qū)動程序,怎樣才能知道自己需要哪一組呢?在類似這樣的例子中,很可能通過一個配置文件獲知這一信息。 然后可以編寫幾行代碼,根據(jù)配置信息將合適的工廠對象實例化。 還可以使用AbstractFactory模式,不同應(yīng)用程序都使用同一子系統(tǒng)。 在這種情況下,工廠對象將傳給子系統(tǒng),告訴子系統(tǒng)將要使用哪些對象,此時,通常主系統(tǒng)知道子系統(tǒng)需要那一組對象,在調(diào)用子系統(tǒng)之前,將實例化正確的工廠對象。12.參考答案:代理13.參考答案:A14.參考答案: 解決方案是:將算法的選擇和算法的實現(xiàn)相分離。讓客戶可以基于場景做出選擇。 實現(xiàn):讓使用算法的類包含一個抽象類,抽象類中有一個抽象方法指定如何調(diào)用算法。每個派生類根據(jù)需要實現(xiàn)算法。15.參考答案:A,B16.參考答案:A17.參考答案:正確18.參考答案:D19.參考答案: 裝飾模式:裝飾模式以對客戶端透明的方式擴展對象的功能,是繼承關(guān)系的一個替代方案,提供比繼承更多的靈活性。 動態(tài)給一個對象增加功能,這些功能可以再動態(tài)的撤消。增加由一些基本功能的排列組合而產(chǎn)生的非常大量的功能。20.參考答案:C21.參考答案:依賴倒轉(zhuǎn);迪米特法則;單一原則;接口隔離22.參考答案: 解決方案是允許擴展一個對象的功能,而不必借助于子類型化。 實現(xiàn):創(chuàng)建一個抽象類來表示原始的類和要添加到這個類上的新功能。在裝飾者類中,將“對新功能的調(diào)用”放在“對緊隨其后對象的調(diào)用”之前或之后,以獲得正確的順序。23.參考答案:開-閉原則,根據(jù)場景進行設(shè)計原則,優(yōu)先組合原則,包容變化原則。24.參考答案:D25.參考答案:D26.參考答案: 現(xiàn)提出幾點技術(shù)意見: 1.本框架提供對各類文件(txt,XML,Word,Excel)的通用讀取和寫入功能。 2.在文件讀寫時,能支持字符轉(zhuǎn)碼和字符轉(zhuǎn)字節(jié)這兩個功能的熱插拔。 3.在文件讀寫時,能支持處理過程動作自定義,即:在文件讀寫正在進行中能加入業(yè)務(wù)功能。例如:每讀取100個字節(jié),則滾動條增加一格。27.參考答案:A,D28.參考答案:松耦合方式29.參考答案:C30.參考答案:狀態(tài)模式第2卷一.參考題庫(共30題)1.以下關(guān)于創(chuàng)建型模式說法正確的是()A、創(chuàng)建型模式關(guān)注的是對象的創(chuàng)建B、創(chuàng)建型模式關(guān)注的是功能的實現(xiàn)C、創(chuàng)建型模式關(guān)注的是組織類和對象的常用方法D、創(chuàng)建型模式關(guān)注的是對象間的協(xié)作2.模式3.當需要支持日志修改時,可以考慮使用()A、命令模式B、工廠模式C、單例模式D、適配器模式4.適配器模式的兩種模式是()和()。5.適配器模式,分為類的適配器和對象的適配器兩種實現(xiàn)其中類的適配器采用的是()關(guān)系,而對象適配器采用的是()關(guān)系。6.Strategy模式使得算法可獨立于使用它的客戶而變化。7.()模式中,父類負責定義創(chuàng)建對象的公共接口,子類決定要創(chuàng)建的具體類是哪一個。8.以下哪個模式是利用一個對象,快速地生成一批對象()A、抽象工廠(AbstractFactory)模式B、合成(Composite)模式C、原型(Prototype)模式D、橋接(Bridge)模式9.以下是模式的基本要素的是()A、名稱B、意圖C、解決方案D、參與者和協(xié)作者10.以下屬于結(jié)構(gòu)型模式的是()。A、代理(Proxy)模式B、合成(Composite)模式C、命令(Command)模式D、觀察者(Observer)模式11.四人團針對“創(chuàng)建優(yōu)秀面向?qū)ο笤O(shè)計”建議了哪些策略?12.迭代器模式(Iterator)模式適用于()A、需要在不同的時間創(chuàng)建請求,生成請求隊列,執(zhí)行請求B、需要遍歷訪問聚集中的對象而不能暴露聚集中內(nèi)部結(jié)構(gòu)C、想避免抽象方法和其實現(xiàn)方法綁定在一起D、一組對象復(fù)雜地相互通信但其方法是定義明確的13.Strategy(策略)模式是一種定義算法家族的方法。14.模板15.封裝分布于多個類之間的行為的模式是()A、觀察者(Observer)模式B、迭代器(Iterator)模式C、訪問者(Visitor)模式D、策略(Strategy)模式16.在觀察者模式中,表述錯誤的是()A、觀察者角色的更新是被動的B、被觀察者可以通知觀察者進行更新C、觀察者可以改變被觀察者的狀態(tài),再由被觀察者通知所有觀察者依據(jù)被觀察者的狀態(tài)進行。D、以上表述全部錯誤17.根據(jù)以下場景說明,請選用最佳的設(shè)計模式,并說明該設(shè)計模式的原理及其優(yōu)缺點? 場景:你在淘寶網(wǎng)上開了一間個人網(wǎng)店,你與買家之間不是面對面的現(xiàn)金交易,而是通過淘寶網(wǎng)的支付寶系統(tǒng)進行電子貨幣虛擬交易。你網(wǎng)店的營業(yè)金額從支付寶里取,買家也把應(yīng)支付的金額交給支付寶。18.要依賴于抽象,不要依賴于具體。即針對接口編程,不要針對實現(xiàn)編程,是()的表述A、開-閉原則B、接口隔離原則C、里氏代換原則D、依賴倒轉(zhuǎn)原則19.外觀模式,當不能采用生成子類的方法進行擴充時,動態(tài)地給一個對象添加一些額外的功能。20.簡述下,創(chuàng)建型模式一共有多少種,分別為哪些?工廠方法模式、抽象工廠模式與建造者模式,有什么區(qū)別,如何區(qū)分應(yīng)用在具體事例中。并請舉例說明。21.()模MVC模型式定義一個操作中的算法的骨架,而將一些步驟延遲到子類中。22.MVC模型的基本工作原理是基于()模式,實現(xiàn)是基于()模式。23.希望創(chuàng)建一個可復(fù)用的類,該類必須能夠與接口不可預(yù)訂的類協(xié)同工作,可以考慮使用()A、橋接模式B、適配器模式C、工廠模式D、裝飾模式24.面向?qū)ο笙到y(tǒng)中功能復(fù)用的最常用技術(shù)是()A、類繼承B、對象組合C、使用抽象類D、使用實現(xiàn)類25.()和()可用于運行時動態(tài)地加上新的行為。26.大多數(shù)設(shè)計模式還讓軟件更具有可修改性。27.系統(tǒng)中的文本顯示類(TextView)和圖片顯示類(PictureView)都繼承了組件類(Component),分別顯示文本和圖片內(nèi)容,現(xiàn)需要構(gòu)造帶有滾動條、或者帶有黑色邊框、或者既有滾動條又有黑色邊框的文本顯示控件和圖片顯示控件,但希望最多只增加三個類,()設(shè)計模式可以實現(xiàn)該目的。A、外觀B、裝飾C、單件D、模板方法28.()定義了算法的步驟,把這些步驟的實現(xiàn)延遲到了子類。29.Open-Close原則的含義是一個軟件實體應(yīng)當對擴展開放,對修改關(guān)閉。30.下列模式中,屬于行為模式的是()A、工廠模式B、觀察者C、適配器D、以上都是第2卷參考答案一.參考題庫1.參考答案:A2.參考答案:就是解決某一類問題的方法論。把解決某類問題的方法總結(jié)歸納到理論高度,那就是模式。3.參考答案:A4.參考答案:對象適配器;類適配器5.參考答案:繼承;組合聚合6.參考答案:正確7.參考答案:工廠方法8.參考答案:C9.參考答案:A,B,C,D10.參考答案:A,B11.參考答案:針對接口編程,優(yōu)先使用對象組合而不是類繼承,找到并封裝變化點。12.參考答案:B13.參考答案:正確14.參考答案:模式定義一個操作中的算法的骨架,而將一些步驟延遲到子類中。15.參考答案:C16.參考答案:C17.參考答案:適配器模式,一個適配允許通常因為接口不兼容而不能在一起工作的

溫馨提示

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

評論

0/150

提交評論