《面向對象期末考試 問題詳解》由會員分享,可在線閱讀,更多相關《面向對象期末考試 問題詳解(13頁珍藏版)》請在裝配圖網上搜索。
1、
一、 填空〔15分〕
1、類之間的 靜態(tài)聯系稱作關聯。
? 在實例化后,由類產生對象,鏈是關聯的實例。
? 在系統(tǒng)實現時,關聯采用對象的屬性來實現。
2、用例圖用于建立需求模型,描述用戶的需求。對象圖是面向對象分析中的根本模型,屬于靜態(tài)結構模型。
3、順序圖〔時序圖〕、通信圖、活動圖、狀態(tài)圖用于描述系統(tǒng)的行為方面的特征,屬于動態(tài)結構模型。
4、時序圖構成:參與者、相互協(xié)作的對象、對象的生命線、參與者與對象之間發(fā)送的消息、執(zhí)行規(guī)約
5、表示
[可見性] 屬性名[:類型][ =初始值]
可見性分為+表示:〔公有的〕、#表示:〔受保護的〕、-表示:〔私有的〕、 ~〔包
2、,只有在同一包中聲明的類能夠使用這一屬性〕。
二、 名詞解釋〔15分〕
1、面向對象方法:是一種運用對象、類、繼承、封裝、聚合、關聯、消息、多態(tài)性等概念來構造系統(tǒng)的軟件開發(fā)方法。
2、類:是具有一樣屬性和操作的一組對象的集合,它為屬于該類的全部對象提供了統(tǒng)一的抽象描述,其部包括屬性和操作務兩個主要局部。類的作用是用來創(chuàng)建對象,對象是類的一個實例。
3、抽象:指從事物中舍棄個別的、非本質的、與問題域無關的特征,而抽取共同的、本質特征的、相關的做法。
4、多態(tài)性:在具有繼承關系的類層次結構中可以定義同名的操作或屬性,但這些屬性或操作具有不同的含義,即具有不
3、同的數據類型或表現出不同的行為?!病巴煌瑓ⅷ暬颉巴煌惃暋?
5、OOA模型:就是通過面向對象的分析所建立的系統(tǒng)分析模型。
用況:一個用況是對參與者使用系統(tǒng)的一項功能的描述,是一組動作序列的描述,是一項請求與響應?!?
三、 簡答〔45分〕
1、繼承和泛化關系
特殊類擁有其一般類的全部屬性與操作,稱作特殊類對一般類的繼承。
一般類對特殊類的抽象關系叫泛化關系〔簡稱泛化〕。
2、聚合與組合有區(qū)別,請說明他們間的區(qū)別,并指出如下圖中哪圖是聚合?
聚合刻畫了現實事物之間的構成關系,表現“整體——局部〞關系。而關聯沒有組成關系或擁有關系
4、。如例題中的c圖
3、簡述如下圖中表現的面向對象的根本思想
答: (1)第一次抽象封裝:事物——對象
①首先,直接以問題域〔現實世界〕中的事物為中心來思考問題、認識問題;②然后,根據這些事物的本質特征和系統(tǒng)責任,把它們抽象地表示為系統(tǒng)中的對象,作為系統(tǒng)的根本構成單位。(對象) 這可以使系統(tǒng)直接映射問題域,保持問題域中事物與其相互關系的本來面貌.
①用對象的屬性(attribute)表示事物的性質〔靜態(tài)特征〕;用對象的操作(operation)表示事物的行為〔動態(tài)特征〕。②對象的屬性與操作結合為一體,成為一個獨立的、不可分的實體,對外屏蔽其部細節(jié)?!矊ο?/p>
5、的封裝〕③復雜的對象可以用簡單的對象作為其構成局部,對象之間是相互聯系的。〔聚合〕④對象之間通過消息進展通訊,以實現對象之間的動態(tài)聯系. (消息)
(2)第二次抽象〔分類〕:對象——類
①通過抽象對對象進展分類。把具有一樣屬性和一樣操作的對象歸為一類,類〔class〕是這些對象的抽象描述,每個對象是它的類的一個實例?!卜诸悺?
②通過關聯表達類(一組對象)之間的靜態(tài)關系。〔關聯〕
(3)第三次抽象:子類——父類
通過在不同程度上運用抽象的原如此,可以得到較一般的類和較特殊的類。特殊類繼承一般類的屬性與操作,從而簡化系統(tǒng)的構造過程與其文檔?!怖^承〕
4、為什么說面向對象語
6、言使得從客觀世界到計算機世界的語義鴻溝變窄?
5、 簡單說明OOA與OOD有何區(qū)別
答: OOA用面向對象的建模語言對系統(tǒng)要實現的需求進展建模,不考慮與系統(tǒng)的具體實現有關的因素或環(huán)境〔如編程語言、界面、數據庫等〕;
OOD是針對系統(tǒng)的一組具體實現條件或環(huán)境,繼續(xù)用面向對象的建模語言進展系統(tǒng)設計與實現。
包括兩局部工作:
? 第一、根據具體實現條件或環(huán)境對OOA模型進展修改和調整
? 第二、根據具體實現條件或環(huán)境建立人機界面、數據存儲和控制驅動等。
6、軟件復用有何益處、有哪些級別的軟件復用,為什么說繼承是軟件復用的重要形式
益處:
? 提高軟
7、件開發(fā)效率;
? 改善軟件質量。
復用級別:
? 程序〔代碼〕級復用
? 分析、設計結果的復用
繼承是重要的軟件復用形式
7、如何發(fā)現參與者?
人員——
系統(tǒng)的直接使用者
設備——
與系統(tǒng)直接相聯的設備為系統(tǒng)提供信息
在系統(tǒng)控制下運行
不與系統(tǒng)相聯的設備
計算機設備
外系統(tǒng)——
上級系統(tǒng)
子系統(tǒng)
其它原有系統(tǒng)
8、使用擴展用況描述下用例
9、類和對象的聯系有何聯系?
? 對象是類的實例——由類創(chuàng)建出對象,系統(tǒng)是由假如干個對象在計算機中的運行協(xié)作完成具體的功能;
? 屬性相似——一個類的所有對象都具有一樣個數、名稱、類型和含義
8、的屬性,但不同的對象屬性具有不同的值;
? 操作一樣——一個類的所有對象的操作都具有一樣的聲明和實現
? 生命周期——對象具有生命周期,類沒有。
10、OO方法中有“實例屬性〞和“類屬性〞之分,請說明什么是“實例屬性〞和“類屬性〞?
答:實例屬性包含同一屬性的每一個對象〔實例〕都具有自己的值。
類屬性是描述類的所有對象共同特征的一個數據項,對于任何對象實例,它的屬性值都是一樣的,系統(tǒng)中只存在同一數據空間。 C++中冠以static的成員變量是類屬性,這樣的屬性對一個類的全部對象實例只是一份共同的數據空間,所以對任何對象而言,該屬性的值總是一樣的。
11、在如下
9、圖中,根據指定的條件標明A、B間的多重性。
給定類A的一個對象a:
(1) a 可以恰好與類B的一個對象關聯
(2) a 可以最多與類B的一個對象關聯
(3) a 可以與類B的一個或多個對象關聯
(4) a 可以與類B的零個或多個對象關聯
12、 如果在具有關聯關系的類中,存在著一個屬性放在哪個類中都不適宜的情況,就考慮使用關聯類。請舉例說明:
舉例:
13、特殊類繼承了一般類的關聯。請對如下類圖,加以說明。
答:一個系統(tǒng)管理員可以操作1..*的計算機,那么一個系統(tǒng)管理員也可以操作1..*的服務器或客戶機
答:教授可以指導學生、也
10、可以指導教授的含義。
答:學生可以指導學生、教授可以指導教授。學生可以指導教授,教授可以指導學生的含義〔學生和教授都是人〕
答:學生可以指導學生、教授可以指導教授,教授可以指導學生的含義
14、簡述對象生命線在時序圖中的特點
答:
生命線代表著類對象在當前模塊中的存活期,即代表了某個對象何時被創(chuàng)建,何時別銷毀。
? 生命線自上而下,上端出現與對象被創(chuàng)建時,下端完畢于對象被銷毀時。否如此,生命線應當從圖的頂部一直延續(xù)到底部。
? 創(chuàng)建對象的消息箭頭的頭部畫在對象符號上。如果對象在圖中被銷毀,那么用一個大的“×〞標記它的析構,該標記或者放在調用析構的消息箭頭處
11、,或者放在從被銷毀的對象最終返回處理結果的箭尾處〔在自析構的情況下〕。
生命線可以分裂成兩條或更多條并發(fā)的生命線,并在某個后續(xù)點處合并,以表示條件性。即,消息的分支可能導致同一對象在生命周期的同一時刻表現出不同的行為,也就產生了生命線上的分支結構。
15、時序圖中,包含如下圖形,請說明其含義
一個對象的操作遞歸地調用自己或調用本對象的其他操作,將出現自調用的情形。
四、 分析建?!?5分〕
1、ATM終端處理取款的用況圖,動作序列如下:
系統(tǒng)從持卡人處獲得取款命令;
系統(tǒng)檢查口令;
系統(tǒng)完成用戶的取款處理;
判斷是否打印回單,并打印回單;
完畢操作并
12、退卡
要求使用擴展用例或包含用例轉換上同例圖
答:
2、很多軟件系統(tǒng)都需要登錄,假如用戶登錄成功,就可以操作系統(tǒng)的功能,主要有以下方式:
u 打開登錄頁面,用戶輸入登錄信息,系統(tǒng)執(zhí)行用戶驗證;系統(tǒng)驗證成功后,系統(tǒng)彈出功能提示框,等待用戶選擇執(zhí)行功能;用戶選擇執(zhí)行某個功能。
u 打開登錄頁面,用戶輸入登錄信息,系統(tǒng)執(zhí)行用戶驗證;系統(tǒng)驗證成功后,轉入主界面;用戶可以執(zhí)行界面中的任何一個功能。
u 用戶執(zhí)行主界面的某個功能,系統(tǒng)打開登錄頁面,用戶輸入登錄信息,系統(tǒng)執(zhí)行驗證,驗證通過后,系統(tǒng)繼續(xù)執(zhí)行用戶選擇功能的動作序列,完成用戶選擇的功能。
如下以一個研究生學籍管理系統(tǒng)為例,描
13、述三種登錄方法。
為了簡化起見,假設此處僅描述登錄、選課和查看學分這3項功能。
要求:分別設計出上三種處理方式的用例圖:
3、用關聯類為公司和雇員之間的薪水關系建模。
4、使用多重性、聚合建立大學、系、學生、課程、教師間的類圖
5、銷售部承受到訂貨單后,進展審核,未被批準的訂單,直接送檔案科歸檔;批準的訂單,在系統(tǒng)中錄入,開具出庫單;配送部根據出庫單發(fā)貨并運送貨物,財務部對已發(fā)貨的訂單開具銷售發(fā)票并寄送給客戶;客戶在收到貨物后,驗貨付款;財務對已經收到的貨款,開具收款憑證,連同訂單歸檔。
要求:畫出以上活動的活動圖。
13 / 13