




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
面向對象分析與設計試題B卷一、單項選取題(在每小題四個備選答案中,選出一種對的答案,并將對的答案序號填在題干括號內。每小題2分,共20分)
1.到20世紀末,面向對象軟件工程已經逐漸發展成熟,特別是()形成和廣泛使用,采用面向對象分析與編程軟件開發辦法已成為軟件開發主流辦法。A.Simula67語言B.Smalltalk語言C.Java語言D.統一建模語言(UML)原則2.面向對象運動產生了各種面向對象語言,其中()是一種混合性面向對象語言,既支持面向過程程序設計辦法,又支持面向對象程序設計辦法,有廣泛應用基本和豐富開發環境支持,因而使面向對象程序設計能得到不久普及。A.SmalltalkB.EiffelC.C++D.Java3.下列不屬于面向對象技術基本特性是()。A.封裝性B.模塊性C.多態性D.繼承性4.面向對象程序設計將描述事物數據與()封裝在一起,作為一種互相依存、不可分割整體來解決。A.信息B.數據隱藏C.對數據操作D.數據抽象5.關于面向對象辦法長處,下列不對的論述是()。A.與人類習慣思維辦法比較一致B.可重用性好C.以數據操作為中心D.可維護性好6.()是從顧客使用系統角度描述系統功能圖形表達辦法。A.類圖B.對象圖C.序列圖D.用例圖7.()是表達系統類及其互相聯系圖示,它是面向對象設計核心,建立狀態圖、協作圖和其她圖基本。A.對象圖B.組件圖C.類圖D.配備圖8.()描述了一組交互對象間動態協作關系,它表達完畢某項行為對象和這些對象之間傳遞消息時間順序。A.對象圖B.協作圖C.狀態圖D.序列圖9.()就是用于表達構成分布式系統節點集和節點之間聯系圖示,它可以表達系統中軟件和硬件物理架構。A.組件圖B.協作圖C.狀態圖D.配備圖10.使用UML進行關系數據庫()時,需要設計出表達持久數據實體類及其聯系,并把它們映射成為關系數據庫表(Table)、視圖(View)等。A.業務UseCase模型設計B.邏輯數據模型設計C.物理數據模型設計C.物理實現設計二、填空題(每空1分,共20分)
1.面向對象開發辦法一改過去老式以___功能分析___為基本__面向過程__構造化分析與設計辦法,它模仿人們理解和解決客觀世界方式來分析問題,把系統視為一系列__對象_集合,其__面向對象設計__又將分析成果映射到某種面向對象實現工具構造上,使映射過程有著比較直接相應關系,使分析者、設計者和編程者都可使用相似_概念_,從而使面向對象軟件開發能比較自然地模仿客觀世界活動,使問題描述空間與_解空間__在構造上盡量一致。因而,采用面向對象辦法可以更有效地開發大型軟件系統。面向對象辦法_封裝_、_繼承_、__多態_等機制不但支持軟件復用,并且使軟件維護工作可靠有效,可實現軟件系統柔性制造,更好地克服_軟件危機__。因而,它已成為成熟廣為采用軟件開發辦法。2.對象是客觀實體抽象表達,是由__描述對象屬性數據__和_對這些數據進行操作行為__兩某些構成。而_類_是對具備相似屬性和行為一組對象抽象描述。因而,它可作為一種顧客自定義類型和創立對象樣板,而按照這種樣板所創立一種個詳細對象就是類__實例__。通過_繼承__關系又可形成一種類層次構造。3.UML中用于描述系統靜態建模視圖稱為靜態視圖,涉及_用例圖__、_類圖__、_對象圖__、__包圖__和__構件圖_。三、寫出下列程序輸出成果。(滿分10分)
#include<iostream.h>#include<string.h>classPerson{public:Person(char*s){name=newchar[strlen(s)+1];strcpy(name,s);}virtualvoidprint(){cout<<”Mynameis”<<name<<endl;}protected:char*name;};classStudent:publicPerson{public:Student(char*s,floatg):Person(s){avg=g;}voidprint(char*s){cout<<s<<”Mynameis“<<name<<”andmygradeis”<<avg<<endl;}private:floatavg;};classprofessor:publicPerson{public:Professor(char*s,intn):Person(s){publs=n;}voidprint(){cout<<”Mynameis”<<name<<”andIhave”<<publs<<”publication.”<<endl;}private:intpubls;};voidmain(void){Person*p;Personx(“Zhang”);Studenty(“Wang”,4,2);Professorz(“Liu”,5);p=&x;p->print();p=&y;p->print();p=&z;p->print();}【運營成果:MynameisZhangMynameisWangMynameisLiuandIhave5publications.四.簡答題(每小題5分,共20分)1.簡述面向對象軟件開發辦法長處。2.簡述面向對象技術三大機制。答:(1)封裝性(encapsulation)所謂封裝就是把對象屬性和行為結合成一種獨立單位,使外界不能直接訪問或修改這些數據和代碼,外界只能通過對象提供接口函數來變化或獲取對象屬性數據,這就實現了消息隱蔽。(2)繼承性如果在一種已定義類上,增長某些特殊屬性或操作,可以形成一種新類,這個類不但繼承了前一種類所有特性,并且具備新特性,因而可看作前一種類特例,是對前一種類繼承。前一種類稱為父類,新產生類叫做子類。通過繼承關系可形成一種類層次構造,叫做繼承構造。(3)多態性在類層次構造不同類中,可用相似函數名實現功能不同函數。3.簡述OOA模型層次構造。答:OOA模型采用五層次構造,它們分別是:(1)對象-類層
劃分待開發系統及其環境信息基本構造單位,標出反映問題域對象和類,并用符號進行規范描述,用信息提供者熟悉術語為對象和類命名。(2)屬性層
定義對象和某些構造中數據單元,繼承構造中所有類公共屬性可放于通用類中。標記對象類必須屬性并放在適當繼承層次上,屬性特殊限制和實例連接關系也應標記出來。(3)服務層
表達對象服務或行為,即是要定義類上操作。(4)構造層
標記現實世界中對象之間關系。當一種對象是另一種對象一某些時,用"整體-某些"關系表達;當一種類屬于另一種類時,用類之間繼承關系表達。(5)主題層
可將有關類或對象劃分為一種主題。4.簡述OOD模型總體構造,并畫圖表達。【4】答案:OOD體系構造各個某些內容:(1)問題論域某些,在OOA模型基本上,細化分析成果,設計一組構成底層應用模型類和對象。(2)人機交互某些:設計顧客界面模型,該顧客界面模型中類和對象提供實現人機交互操作接口函數。顧客界面設計涉及菜單設計、窗口設計、輸入/輸出界面設計等等。(3)任務管理某些:建立某些類,用以負責解決操作系統級并發問題、中斷、調度以及其他與特定平臺關于問題。(4)數據管理某些:提供數據管理系統中存儲和檢索對象基本構造,涉及對永久性數據訪問和管理。數據管理設計涉及:—數據存儲設計:數據存儲設計選取數據存儲方式(文獻存儲、關系數據庫表格存儲或面向對象數據庫存儲)。—設計相應操作。為每個需要存儲對象和類增長用于存儲管理屬性和操作,在類和對象定義中加以描述。}五.試用UML對教學管理系統及有關數據庫系統進行分析和設計。學生選課系統普通涉及(1)選課管理功能;(2)成績管理功能。試完畢下列工作:(1)建立系統靜態構造模型—畫出系統用例圖和類圖;(10分)(2)建立系統動態構造模型—畫出系統序列圖和協作圖;(10分)(3)建立關系數據庫邏輯模型。(10分)【答案:(1)系統用例圖如下對象類圖如下:(2)把需要持久存儲數據實體類及其聯系,映射成為如下關系數據庫表:學生(學生號、姓名、出生日期、性別、籍貫、地址、電話、入學時間、專業、班級備注)教師(教師號、姓名、出生日期、性別、籍貫、地址、電話、職稱、特長、備注)課程(課程號、課程名、描述、學分、學時、性質、備注)開設課程(課程號、學期、授課日期、授學時間、地點、選修人數、備注)】----------------------------------------------------------------------------------------------------------------------面向對象分析與設計試題C卷一、單項選取題(在每小題四個備選答案中,選出一種對的答案,并將對的答案序號填在題干括號內。每小題1分,共20分)
1.面向對象技術最重要基本特性是()。A.抽象性B.封裝性C.多態性D.繼承性2.面向對象程序設計將描述事物數據與()封裝在一起,作為一種互相依存、不可分割整體來解決。A.信息B.數據隱藏C.對數據操作D.數據抽象3.關于面向對象辦法長處,下列不對的論述是()。A.與人類習慣思維辦法比較一致B.可重用性好C.以數據操作為中心D.可維護性好4.C++對C語言作了諸多改進,即從面向過程變成為面向對象重要因素是()。
A.增長了某些新運算符B.容許函數重載,并容許設立缺省參數C.規定函數闡明符必要用原型D.引進了類和對象概念5.下列不屬于類成員函數是()。
A.構造函數B.析構函數C.友元函數D.拷貝構造函數6.繼承機制作用是()。
A.信息隱藏B.數據封裝C.派生新類D.數據抽象7.類模板通過實例化而生成詳細()
A.對象B.模板函數
C.函數模板D.類8.類析構函數是在()調用。
A.類創立時B.創立對象時
C.刪除對象時D.不自動調用9.在公有繼承狀況下,基類成員在派生類中訪問權限()
A.受限制B.保持不變C.受保護D.不受保護10.C++語言通過()來建立類族。
A.類嵌套B.類繼承C.虛函數D.抽象類11.在UML中,有3種基本構造塊,分別是(A)
A.事物、關系和圖
B.注釋、關系和圖
C.事物、關系和構造
D.注釋、關系和構造12.在UML中,有四種關系,下面哪個不是(B)
A.依賴關系
B.繼承關系
C.泛化關系D.實現關系13.下面哪個不是UML中靜態視圖()
A.狀態圖
B.用例圖
C.對象圖
D.類圖
14.在用例之間,會有三種不同關系,下列哪個不是它們之間也許關系(
D
)
A.包括(include)
B.擴展(extend)
C.泛化(generalization)
D.關聯(connect)
15.下列關于活動圖說法錯誤是()
A.一張活動圖從本質上說是一種流程圖,顯示從活動到活動控制流
B.活動圖用于對業務過程中順序和并發工作流程進行建模。
C.活動圖基本要素涉及狀態、轉移、分支、分叉和匯合、泳道、對象流。
D.活動圖是UML中用于對系統靜態方面建模五種圖中一種16.用例(Use-case)用來描述系統在事件做出響應時所采用行動。用例之間是具備有關性。在一種“訂單輸入子系統”中,創立新訂單和更新訂單都需要檢查顧客帳號與否對的。那么,用例“創立新訂單”、“更新訂單”與用例“檢查顧客帳號”之間是()關系
A.擴展(extend)
B.包括(include)
C.分類(classification)
D.匯集(aggregation)
17.UML中類有三種,下面哪個不是其中之一()
A.實體類
B.抽象類
C.控制類
D.邊界類18.閱讀圖例,判斷下列哪個說法是錯誤。(
)
A.讀者可以使用系統還書用例
B.每次執行還書用例都要執行圖書查詢用例
C.每次執行還書用例都要執行交納罰金用例
D.執行還書用例有也許既執行圖書查詢用例,又執行交納罰金用例
19.關于協作圖描述,下列哪個不對的(B)
A.協作圖作為一種交互圖,強調是參加交互對象組織;
B.協作圖是順序圖一種特例
C.協作圖中有消息流順序號;
D.在ROSE工具中,協作圖可在順序圖基本上按“F5”
20.在UML中,()把活動圖中活動劃分為若干組,并將劃分組指定給對象,這些對象必要履行該組所涉及活動,它可以明確地表達哪些活動是由哪些對象完畢。
A.組合活動B.同步條C.活動
D.泳道二、填空題(每空1分,共20分)1.對象是客觀實體抽象表達,是由___________和___________兩某些構成。而___________是對具備相似屬性和行為一組對象抽象描述。因而,它可作為一種顧客自定義類型和創立對象樣板,而按照這種樣板所創立一種個詳細對象就是類___________。通過___________關系又可形成一種類層次構造。在類層次構造不同類中,可用相似函數名實現功能不同函數,面向對象技術這種特性叫做___________。2.UML從不同視角為系統架構建模,可產生九種視圖:________________、_________________、_________________、________________、________________、_________________、________________、_________________、_________________。3.________________是用來反映若干個對象之間動態協作關系一種交互圖。它重要反映對象之間已發送消息先后順序和對象之間交互過程。________________是用來描述實現某些服務所涉及對象及其互相之間關系(涉及消息通信)動態視圖。建模者可以選取______________________________來反映對象之間協作關系;如果需要強調時間和序列,最佳選取________________;如果需要強調上下文有關,最佳選取________________。三、寫出下列程序輸出成果。(滿分10分)
#include<iostream.h>#include<string.h>classPerson{public:Person(char*s){name=newchar[strlen(s)+1];strcpy(name,s);}virtualvoidprint(){cout<<”Mynameis”<<name<<endl;}protected:char*name;};classStudent:publicPerson{public:Student(char*s,floatg):Person(s){avg=g;}voidprint(char*s){cout<<s<<”Mynameis“<<name<<”andmygradeis”<<avg<<endl;}private:floatavg;};classprofessor:publicPerson{public:Professor(char*s,intn):Person(s){publs=n;}voidprint(){cout<<”Mynameis”<<name<<”andIhave”<<publs<<”publication.”<<endl;}private:intpubls;};voidmain(void){Person*p;Personx(“Zhang”);Studenty(“Wang”,4,2);Professorz(“Liu”,5);p=&x;p->print();p=&y;p->print();p=&z;p->print();}四.簡答題(每小題4分,共20分)1.簡述統一建模語言UML長處。2.簡述面向對象技術三大機制。3.簡述面向對象分析基本環節。4.簡述OOD模型總體構造,并畫圖表達。5.應用UML進行系統分析和設計所需建立視圖有那幾種?五.試用UML對圖書管理系統及有關數據庫系統進行分析和設計。圖書管理系統應實現(1)借書;(2)還書;(3)圖書資料和借閱信息查詢;(4)系統維護。試完畢下列工作:(1)建立系統靜態構造模型—畫出系統用例圖和類圖;(10分)(2)建立系統動態構造模型—畫出序列例圖和協作圖;(10分)(2)建立關系數據庫邏輯模型。(10分)---------------------------------------------------------------------------------------------------------------------面向對象分析與設計試題D卷一、單項選取題(在每小題四個備選答案中,選出一種對的答案,并將對的答案序號填在題干括號內。每小題1分,共20分)
1.到20世紀末,面向對象軟件工程已經逐漸發展成熟,特別是()形成和廣泛使用,采用面向對象分析與編程軟件開發辦法已成為軟件開發主流辦法。A.Simula67語言B.Smalltalk語言C.Java語言D.統一建模語言(UML)原則2.下列不屬于面向對象技術基本特性是()。A.封裝性B.模塊性C.多態性D.繼承性3.面向對象程序設計將描述事物數據與()封裝在一起,作為一種互相依存、不可分割整體來解決。A.信息B.數據隱藏C.對數據操作D.數據抽象4.C++對C語言作了諸多改進,即從面向過程變成為面向對象重要因素是()。
A.增長了某些新運算符B.容許函數重載,并容許設立缺省參數C.規定函數闡明符必要用原型D.引進了類和對象概念5.下列不屬于類成員函數是()。
A.構造函數B.析構函數C.友元函數D.拷貝構造函數6.繼承機制作用是()。
A.信息隱藏B.數據封裝C.派生新類D.數據抽象7.普通對象有諸多屬性,但對于外部對象來說某些屬性應當不能被直接訪問,下面哪個不是UML中類成員訪問限定符()A.公有B.受保護C.友員D.私有8.類模板通過實例化而生成詳細()
A.對象B.模板函數C.函數模板D.類9.類構造函數是在()調用。
A.類創立時B.創立對象時
C.刪除對象時D.不自動調用10在公有繼承狀況下,基類成員在派生類中訪問權限()
A.受限制B.保持不變C.受保護D.不受保護11.C++語言通過()來建立類族。
A.類嵌套B.類繼承C.虛函數D.抽象類12.UML提供了4種構造圖用于對系統靜態方面進行可視化、詳述、構造和文檔化。其中()是面向對象系統建模中最慣用圖,用于闡明系統靜態設計視圖A.用例圖B.類圖C.對象圖D.序列圖13.當需要描述體系構造靜態實行視圖時,應當選取()。A.對象圖B.組件圖C.類圖D.配備圖14.用例(Use-case)用來描述系統在事件做出響應時所采用行動。用例之間是具備有關性。在一種“訂單輸入子系統”中,創立新訂單和更新訂單都需要檢查顧客帳號與否對的。那么,用例“創立新訂單”、“更新訂單”與用例“檢查顧客帳號”之間是()關系。
A.擴展(extend)
B.包括(include)
C.分類(classification)
D.匯集(aggregation)15.()是描述系統中在某一時刻,一組對象以及它們之間關系圖形,其可以看作是類圖在系統某一時刻實例。
A.組件圖
B.類圖C.對象圖
D.布置圖16.順序圖是強調消息隨時間順序變化交互圖,下面哪個不是用來描述順序圖構成某些()
A.狀態
B.生命線
C.激活期
D.類角色17.下面哪個選項中有不是活動圖中基本元素()A.狀態、分支B.狀態、匯合C.泳道、轉移D.信號、轉移18.如下是圖書管理系統中有關類,屬于邊界類是()A.書類B.借書操作界面類C.書籍管理類D.讀者類19.在用UML進行數據庫分析與設計過程中,()就是進行數據庫需求分析,使用用例圖、類圖、順序圖、活動圖等建立業務模型。A.邏輯數據模型設計B業務UseCase模型設計C.物理數據模型設計D.物理實現設計20.使用UML進行關系數據庫()時,需要設計出表達持久數據實體類及其聯系,并把它們映射成為關系數據庫表(Table)、視圖(View)等。A.業務UseCase模型設計B.邏輯數據模型設計C.物理數據模型設計C.物理實現設計二、填空題(每空1分,共20分)1.UML中用于描述系統靜態建模視圖稱為靜態視圖,涉及________、_________、_________、__________和__________。用于描述系統動態建模視圖稱為動態視圖,涉及________、_________、__________和__________。2.對象是客觀實體抽象表達,是由_________________________和________________________兩某些構成。而______是對具備相似屬性和行為一組對象抽象描述。因而,它可作為一種顧客自定義類型和創建對象樣板,而按照這種樣板所創立一種個詳細對象就是類______通過________關系又可形成一種類層次構造。3.________是美國Rational公司面向對象建模工具,運用這個工具可以建立用_______描述________模型,并且可以自動生成和維護C++、Java、VB、Oracle等語言和系統代碼。____________界面分為三個某些——___________窗口、_________窗口和__________窗口。三、寫出下列程序輸出成果。(滿分10分)
#include<iostream.h>#include<string.h>classBase{protected: int*p;public: Base(inta=0){p=newint(a);} ~Base(){deletep;} virtualvoidprint(){cout<<"p->"<<*p<<endl;}};classDerived:publicBase{ staticinty;public: Derived(intb=0){*p=b;y++;} voidprint(){cout<<*p<<','<<y<<endl;}};intDerived::y=0;voidmain(void){Derivedd(10);Base*pb=&d;pb->print();Derived(20).print();}四.簡答題(每空4分,共20分)1.簡述UML長處。2.簡述面向對象技術三大機制。3.簡述OOA模型層次構造。4.簡述OOD模型總體構造,并畫圖表達。5.應用UML進行數據庫系統分析和設計環節。五.試用UML對網上超市系統及有關數據庫系統進行分析和設計。請完畢下列工作:(1)建立系統靜態構造模型—畫出系統用例圖和類圖;(10分)(2)建立系統動態構造模型—畫出序例圖和活動圖;(10分)(2)建立關系數據庫邏輯模型。(10分)
------------------------------------------------------------------------------第一學期面向對象分析與設計試題一、單項選取題(在每小題四個備選答案中,選出一種對的答案,并將對的答案序號填在題干括號內。每小題1分,共20分)
1.()經常被定義成虛函數。
A.構造函數B.析構函數C.友元函數D.靜態函數2.()是對具備相似屬性和行為對象集合抽象描述A.系統B.實體C.對象D.類3.封裝目是實現信息有效()A.共享B.隱蔽C.操作D.繼承4.()是實現“一種接口,各種辦法”技術。A.抽象性B.封裝性C.多態性D.繼承性5.C++對C語言作了諸多改進,即從面向過程變成為面向對象重要因素是()。
A.增長了某些新運算符B.引進了類和對象概念C.容許類繼承和派生D.容許函數重載6.繼承機制作用是()。
A.信息隱藏B.數據封裝C.數據抽象D.軟件重用7.()通過實例化而生成詳細類。
A.對象B.函數模板C.類模板D.STL8.類構造函數是在()調用。
A.類創立時B.創立對象時
C.刪除對象時D.不自動調用9.在保護性繼承狀況下,基類public和protected成員在派生類中變為()成員。
A.公有B.私有C.受保護D.任意10.下列哪種做法不符合面向對象設計原則()。
A.類與類之間耦合應當很松散B.繼承耦合應盡量松散C.繼承耦合應盡量緊密D.設計應當具備最優可重用性11.()是從顧客使用系統角度描述系統功能圖形表達辦法。A.對象圖B.類圖C.序列圖D.用例圖12.在對象模型中,()體現了繼承性概念。
A.關聯
B.依賴關系
C.泛化關系D.聚合/組合關系13.()是面向對象設計核心,建立狀態圖、協作圖和其她圖基本。A.對象圖B.組件圖C.類圖D.序列圖14.下面哪個是UML中動態視圖()
A.用例圖
B.
類圖
C.對象圖
D.
序列圖
15.下列說法錯誤是()
A.活動圖不能用于描述系統業務流程。
B.活動圖由一系列動作狀態構成,動作狀態控制可以從一種狀態流向另一種與之相鄰狀態。C.活動圖還可以表達決策、條件、動作狀態并行執行、消息規范闡明等內容。D.協作圖可以用來描繪系統業務流程。16.在一種“圖書管理系統”中,借書解決和還書解決都需要先通過身份驗證。那么,用例“借書解決”、“還書解決”與用例“身份驗證”之間是()關系
A.特化
B.泛化
C.使用
D.擴展17.()就是用于表達構成分布式系統節點集和節點之間聯系圖示,它可以表達系統中軟件和硬件物理架構。
A.對象圖
B.類圖
C.組件圖
D.配備圖18.閱讀圖例,判斷下列哪個說法是錯誤。(
)
A.讀者可以使用系統還書用例
B.每次執行還書用例都要執行圖書查詢用例
C.執行還書用例有也許既執行圖書查詢用例,又執行交納罰金用例D.每次執行還書用例都要執行交納罰金用例19.()描述了一組交互對象間動態協作關系,它表達完畢某項行為操作參加對象和這些對象之間傳遞消息時間順序。A.協作圖B.序列圖C.對象圖D.組件圖20.()可以更好地用于對數據庫建模。
A.老式ER圖B.UML用例圖C.UML類圖
D.數據流圖二、填空題(每空1分,共20分)1.面向對象開發辦法模仿人們理解和解決客觀世界方式來__(1)__問題,把系統視為一系列__(2)__集合,其面向對象__(3)__又將分析成果映射到某種面向對象__(4)__工具構造上,使映射過程有著比較直接相應關系,使分析者、設計者和編程者都可使用相似概念,從而使面向對象軟件開發能比較自然地模仿客觀世界活動,使__(5)__空間與__(6)__空間在構造上盡量一致。因而,采用面向對象辦法可以更有效地開發大型軟件系統。面向對象辦法__(7)__、__(8)__、__(9)__態等機制不但支持軟件復用,并且使軟件維護工作可靠有效,可實現軟件系統柔性制造,更好地克服__(10)_。因而,它已成為成熟廣為采用軟件開發辦法。到20世紀末,面向對象軟件工程逐漸發展成熟,特別是__(11)__形成和廣泛使用,使面向對象軟件開發辦法已成為軟件開發主流技術。2.UML通過9種視圖來為系統建模,這9種視圖是:_____(12)_______、_____(13)_______、_____(14)________、_____(15)_______、_____(16)_______、_____(17)________、_____(18)______、_____(19)______、______(20)_______。三、寫出下列程序輸出成果(滿分10分)
#include<iostream.h>classperson{public:virtualvoidshow(){cout<<“Itisaperson”<<endl;}};classstudent:publicperson{public:virtualvoidshow(){cout<<“Itisastudent”<<endl;}};voidmain(){personO1,*ps;StudentO2;O1.show();O2.show();ps=&O1;ps->show();ps=&O2;ps->show();}四、簡答題(每小題5分,共20分)1.簡述面向對象分析基本環節。2.簡述建立面向對象設計模型辦法環節。3.簡述基于UML面向對象系統開發辦法基本環節。4.簡述基于UML關系數據庫設計辦法環節。五、請用UML對圖書借閱管理系統及有關數據庫系統進行分析和設計。圖書管理系統應實現圖書資料和借閱信息查詢、借書、還書以及系統維護功能操作。試完畢下列工作:(1)畫出讀者用例圖(5分)(2)畫出“讀者查詢圖書信息”用例序列圖和協作圖(10分)(3)畫出設計類圖(10分);(4)“讀者”與“圖書”類之間存在多對多關聯,試將這種關聯轉化為一種關聯表。(5分)
-----------------------------------------------------------------------------------------------------------------------第一學期面向對象分析與設計試題一、單項選取題(在每小題四個備選答案中,選出一種對的答案,并將對的答案序號填在題干括號內。每小題1分,共20分)
1.()是對具備相似屬性和行為一組對象抽象描述。A.實體B.對象C.類模板D.類2.一類對象向另一類對象所發消息格式中不涉及()。A.對象名B.操作函數名C.參數表D.類名3.面向對象技術三大機制不涉及()。A.抽象B.封裝C.多態D.繼承4.從整體功能層面考慮類設計應遵循下列三條原則,除了()。A.單一功能原則B.封裝原則C.最小驚訝原則D.開放/封閉原則5.可以在類外訪問類()。A.私有成員B.受保護性成員C.公有成員D.純虛函數6.類()是供創立類實例對象時調用,完畢對象初始化。A.內聯函數B.析構函數C.友員函數D.構造函數7.派生類可以繼承()。
A.私有成員B.某些公有成員C.構造函數D.析構函數8.如果合理地運用(),就可以在類復雜層次關系中為共享訪問與成員隱蔽之間找到一種平衡點,既實現某些成員隱蔽,又能以便某些成員繼承,實當代碼高效重用和擴充。
A.私有繼承B.保護繼承C.公有繼承D.多繼承9.如果將某類族中一種同名成員函數闡明為虛函數,則可用()來調用不同派生類虛函數,實現運營時多態。A.基類對象B.派生類對象C.基類對象指針D.派生類對象指針10.C++中既可實現文獻輸入又可實現文獻輸出類是()
A.ifstreamB.ofstreamC.iostreamD.fstream11.基類中protected成員,通過public派生,其在派生類中可見性為()。
A.不可訪問B.private
C.protectedD.public12.在C++程序中,對象之間互相通信可以通過()來實現。A.繼承B.調用成員函數C.封裝D.函數重載13.()階段重要目的是為了更精準地理解顧客需求,并獲得一種使用開發人員熟悉語言描述、易于維護且能體現系統基本構造模型。A.系統需求分析B.系統分析C.系統設計D.系統實現14.在面向對象程序設計語言中,()是運用可重用成分構造軟件系統最有效特性,它不但支持系統可重用性,并且尚有助于提高系統可擴充性。A.封裝B.繼承C.抽象D.引用15.()是從顧客使用系統角度描述系統功能圖形表達辦法。A.類圖B.組件圖C.用例圖D.配備圖16.用來描述實現某些服務所涉及對象及其交互關系(涉及消息通信)動態視圖就稱為(),可用于描繪業務流程。A.對象圖B.協作圖C.狀態圖D.活動圖17.()表達構成系統代碼部件及其互相之間聯系圖示。A.狀態圖B.協作圖C.組件圖D.配備圖18.UML提供了一系列圖支持面向對象分析與設計,其中()描述是系統靜態組織構造和數據構造。A.序列圖B協作圖C.對象圖D.類圖19.()是描述系統體系構造靜態實現視圖。A.類圖B.對象圖C.組件圖D.配備圖20.使用UML進行關系數據庫()時,需要設計出表達持久數據實體類及其聯系,并把它們映射成為關系數據庫表(Table)、視圖(View)等。A.物理數據模型設計B.物理實現設計C.業務UseCase模型設計C.邏輯數據模型設計二、填空題(每空1分,共20分)
1.用_(1)_機制可以實現發送一種通用消息而調用不同辦法;(2_)機制是實現信息隱蔽一種技術,其目是使類_(3)_互相分離。2.類是一組具備相似屬性和服務對象抽象描述,類中每個對象都是這個類一種_(4)_。類之間共享屬性與服務機制叫做_(5)。一種對象通過發送_(6)_來祈求另一種對象為其服務。3.派生類生成包括三個環節:_(7)_、_(8)_和_(9)_。4._(10)_描述完畢某項行為操作參加對象和這些對象之間傳遞消息時間順序。_(11)_描述系統運營過程中某類對象也許具備狀態,以及在不同狀態間跳轉和觸發這些跳轉外部事件。_12__可用于描述系統業務流程,它由一系列動作狀態構成,動作狀態控制可以從一種狀態流向另一種與之相鄰狀態。5.基于UML系統分析重要目的是為了更精準地理解_(13_)_,并獲得一種使用開發人員語言描述、易于維護且能體現系統基本構造_(14)_模型。該模型重要涉及_(15_)和(16_)。6.基于UML關系數據庫設計普通可分為4個階段:_(_17_)_、_(_18_)_、_(_19__)_和_(_20_)_。三、寫出下列程序輸出成果。(滿分10分)
classB{public:B(){cout<<"B"<<endl;}virtualvoidf(){cout<<"B::f"<<endl;}virtual~B(){cout<<"~B"<<endl;}};ClassD:publicB{private:intd;public:D(){cout<<"D"<<endl;}voidf(){cout<<"D::f"<<endl;}virtual~D(){cout<<"~D"<<endl;}};voidmain(){B*pB;Dd1;pB=&d1;pB->f();deletepB;}四.簡答題(每小題4分,共20分)1.為什么面向對象辦法能更有效地克服軟件危機?2.如何實現運營時多態?3.基于UML面向對象系統開發辦法涉及哪幾步?4.簡述擬定分析類辦法。5.簡述基于UML數據庫系統分析和設計環節。五.分析與設計題試用UML對開放式學籍管理系統及有關數據庫系統進行分析和設計。學籍管理系統重要顧客是系統管理員和學生:系統管理員使用學籍管理系統來實現教師信息管理、學生信息管理,課程管理、成績管理和打印報表;學生使用學籍管理系統來實現選課管理和成績查詢。試完畢下列工作:(1)畫出學籍管理系統用例圖;(6分)(2)定義學籍管理系統三個基本分析類;(6分)(3)畫出學籍管理系統類圖;(6分)(4)畫出學生查詢成績活動圖;(6分)(5)學生類和課程類之間存在多對多關聯,試將這種關聯轉化為關系數據庫模式。(6分)-----------------------------------------------------------------------------------------------------------------------第二學期面向對象分析與設計試題A卷一、單項選取題(在每小題四個備選答案中,選出一種對的答案,并將對的答案序號填在題干括號內。每小題1分,共20分)
1.面向對象分析與設計是面向對象軟件開發過程中兩個重要階段,下列活動中,_____不屬于面向對象分析階段。A.構建分析模型
B.辨認分析類C.用例動態建模
D.評估分析模型2.在面向對象辦法中,_____可當作是屬性數據以及這些屬性數據上專用操作封裝體。A.實體B.類C.類模板D.對象3.類是一組具備相似屬性和相似操作對象集合,類中每個對象都是這個類一種_____。A.實體B.實例C.用例D.組件4.一種對象通過發送_____來祈求另一對象為其服務。A.參數
B.消息
C.成員函數名
D.接口函數名5.類之間共享屬性和操作機制稱為______。A.抽象B.封裝C.多態D.繼承6.類設計應遵循三條基本原則。對于一種設計并實現好類,如果需要功能上擴充,普通來說應當通過添加新類實現,而不是修改原類代碼。這種原則叫______。A.封裝原則B.開放/封閉原則C.最小驚訝原則D.單一功能原則7.一種類______只能被類成員函數、友元函數及派生類成員函數所訪問。A.私有成員B.受保護性成員C.公有成員D.純虛函數8.當對象離開其有效范疇,或被清除時,______將被調用來釋放對象所占用內存。A.靜態成員函數B.友員函數C.構造函數D
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025秋五年級語文上冊統編版-【21 古詩詞三首】交互課件
- 工地押金合同協議書范本
- 2025年藥用空心膠囊項目策劃方案報告
- 租用車合同協議書范本
- 網店潮牌創業計劃書
- 店面承租合同轉讓協議書
- 門頭店招合同協議書
- 2025年中國甲基硅樹脂項目投資計劃書
- 企業如何脫胎換骨長大成人完整文檔
- 物流公司轉讓合同協議書
- 不孕癥患者心理分析及干預課件
- 柴油發電機組的操作維護保養
- (完整版)水電材料單
- 特應性皮炎的診斷與治療課件
- 領導者的創新思維及創新能力課件
- 中國利用外資和對外投資
- 2023屆浙江省湖州市吳興區數學五年級第二學期期末達標檢測試題含解析
- 2022年建筑行業民工花名冊
- 井下測量放線安全要求
- 5、白蓮河抽水蓄能電站引水工程施工組織設計
- (完整版)六年級數學畢業考試試卷及答案
評論
0/150
提交評論