一、實驗目的
(1)理解類間關係的基本概念。
(2)掌握描繪類間關係的方法。
(3)掌握在Rational Rose中繪製類關係的操作方法。
二、實驗要求
(1)2+2學時(其中課外2學時);
(2)每組2人;
(3)設計性實驗;
三、實驗主要設備
臺式或筆記本電腦
四、實驗內容
1.醫院住院部有若干科,每科有若干醫生和病房,病人住在病房中由某個醫生負責治療。每個醫生只能屬於一個科,每個病房也只能屬於一個科。一個病房可住多個病人,一個病人由固定醫生負責治療,一個醫生負責多個病人。試畫出表示科、醫生、病房、病人及其聯繫的類圖,每類均設置主要屬性和方法。
2.分析
類(Class)一般包含3個組成部分。第一個是類名;第二個是屬性(attributes);第三個是該類提供的方法( 類的性質可以放在第四部分;如果類中含有內部類,則會出現第五個組成部分)。類名部分是不能省略的,其他組成部分可以省略。
(1)類名可以分爲:科,醫生,病房,病人。
(2)屬性分別爲:
科:科號,科名。
醫生:醫生編號,姓名,性別,身份。
病房:病房編號,牀位數。
病人:病人編號,姓名,性別。
(下劃線表示主要屬性)
(3)方法,也可以理解爲他們之間的關係:
每科有若干個醫生,所以醫生屬於某一科,科包含了若干個醫生,每個科都擁有病房;
病人在病房中由某個醫生負責,每個病房也只能屬於一個科;
一個病人由固定醫生負責治療,一個醫生負責多個病人,所以醫生治療病人;
病人住進病房。
關聯關係:類與類之間的聯接,它使一個類知道另一個類的屬性和方法。
表示方法:用 實線+箭頭, 箭頭指向被使用的類。
聚合關係:是關聯關係的一種,是強的關聯關係。聚合關係是整體和個體的關係。關聯關係的兩個類處於同一層次上,而聚合關係兩個類處於不同的層次,一個是整體,一個是部分。
表示方法:空心菱形+實線+箭頭,箭頭指向個體。
他們之間的關係:
科擁有若干個病房,而且病房都屬於對應的科,所以他們之間是聚合關係;
科包含若干個醫生,而醫生屬於某一個科,他們之間也是聚合關係;
醫生治療病人,知道病人的信息,而病人也可以看到醫生的信息,所以他們之間是相互關聯關係;
病人住院可以查到住院信息包括病房編號和牀位數,而病房也登記了病人的基本信息,所以他們之間是相互關聯關係。
如圖所示:
五、總結
1.注意構造類圖的方法
2.注意構造類,和類的屬性,和類的方法(操作)
3.聚合關係的構建。