資源描述:
《UML教程06-類圖和對象圖ppt課件.ppt》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、第6章類圖和對象圖6.1類圖的概念6.2類圖建模技術(shù)6.3對象圖6.4對象圖建模技術(shù)6.5實(shí)例——圖書館管理系統(tǒng)的類圖6.1類圖的概念描述類、接口、協(xié)作及它們之間關(guān)系的圖。顯示系統(tǒng)中各個(gè)類的靜態(tài)結(jié)構(gòu)。6.1.1概述類圖的元素:類(Class)接口(Interface)協(xié)作(Collaboration)依賴關(guān)系(Dependency)泛化關(guān)系(Generalization)關(guān)聯(lián)關(guān)系(Association)實(shí)現(xiàn)關(guān)系(Realization)6.1.2類面向?qū)ο笙到y(tǒng)組織結(jié)構(gòu)的核心。對一組具有相同屬性、操作
2、、關(guān)系和語義的對象的抽象。包括名稱部分(Name)、屬性部分(Attribute)和操作部分(Operation)。6.1.2類1名稱2屬性3操作4職責(zé)5約束6注釋名稱應(yīng)該來自系統(tǒng)的問題域。應(yīng)該是一個(gè)名詞,且不應(yīng)該有前綴或后綴。分為簡單名稱和路徑名稱。屬性描述了類在軟件系統(tǒng)中代表的事物(即對象)所具備的特性。類可以有任意數(shù)目的屬性,也可以沒有屬性。在UML中,類屬性的語法為:屬性1.可見性2.屬性名3.類型4.初始值5.屬性字符串(1)可見性類型:公有(Public)“+”私有(Private)“-”
3、受保護(hù)(Protected)“#”(2)屬性名每個(gè)屬性都必須有一個(gè)名字以區(qū)別于類中的其他屬性。屬性名由描述所屬類的特性的名詞或名詞短語組成。單字屬性名小寫,如果屬性名包含了多個(gè)單詞,這些單詞要合并,且除了第一個(gè)單詞外其余單詞的首字母要大寫。(3)類型簡單類型:整型布爾型實(shí)型枚舉類型系統(tǒng)中的其他類(4)初始值目的:保護(hù)系統(tǒng)的完整性,防止漏掉取值或被非法的值破壞系統(tǒng)的完整性。為用戶提供易用性。(5)屬性字符串指定關(guān)于屬性的其他信息。任何希望添加在屬性定義字符串值但又沒有合適地方可以加入的規(guī)則,都可以放在屬
4、性字符串里。操作對類的對象所能做的事務(wù)的抽象。一個(gè)類可以有任意數(shù)量的操作或者根本沒有操作。返回類型、名稱和參數(shù)一起被稱為操作簽名。在UML中,類操作的語法為:操作1.可見性2.操作名3.參數(shù)表4.返回類型5.屬性字符串(1)可見性類型:公有(Public)“+”私有(Private)“-”受保護(hù)(Protected)“?!卑鼉?nèi)公有(Package)“~”(2)操作名用來描述所屬類的行為的動(dòng)詞或動(dòng)詞短語。單字操作名小寫,如果操作名包含了多個(gè)單詞,這些單詞要合并,并且除了第一個(gè)單詞外其余單詞的首字母要大寫
5、。(3)參數(shù)表一些按順序排列的屬性定義了操作的輸入。是可選的,即操作不一定必須有參數(shù)才行。定義方式:“名稱:類型”。若存在多個(gè)參數(shù),將各個(gè)參數(shù)用逗號隔開。參數(shù)可以具有默認(rèn)值。(4)返回類型是可選的,即操作不一定必須有返回類型。絕大部分編程語言只支持一個(gè)返回值。具體的編程語言一般要加一個(gè)關(guān)鍵字void來表示無返回值。(5)屬性字符串在操作的定義中加入一些除了預(yù)定義元素之外的信息。職責(zé)類或其他元素的契約或義務(wù)。自由形式的文本。非形式化的方法。約束指定了類所要滿足的一個(gè)或多個(gè)規(guī)則。形式化的方法。注釋注釋可以
6、包含圖形也可以包含文本。6.1.3接口在沒有給出對象的實(shí)現(xiàn)和狀態(tài)的情況下對對象行為的描述。包含操作但不包含屬性。沒有對外界可見的關(guān)聯(lián)。一個(gè)類可以實(shí)現(xiàn)一個(gè)或多個(gè)接口。6.1.3接口接口類:6.1.4類之間的關(guān)系1依賴關(guān)系2泛化關(guān)系3關(guān)聯(lián)關(guān)系4實(shí)現(xiàn)關(guān)系依賴關(guān)系表示兩個(gè)或多個(gè)模型元素之間語義上的關(guān)系??蛻粢阅撤N形式依賴于提供者。,關(guān)聯(lián)、實(shí)現(xiàn)和泛化都是依賴關(guān)系。依賴關(guān)系1.使用依賴(Usage)2.抽象依賴(Abstraction)3.授權(quán)依賴(Permission)4.綁定依賴(Binding)1.使用依賴
7、表示客戶使用提供者提供的服務(wù)以實(shí)現(xiàn)它的行為,包括:使用(《use》)調(diào)用(《call》)參數(shù)(《parameter》)發(fā)送(《send》)實(shí)例化(《instantiate》)2.抽象依賴表示客戶與提供者之間的關(guān)系,依賴于在不同抽象層次上的事物,包括:跟蹤(《trace》)精化(《refine》)派生(《derive》)3.授權(quán)依賴表達(dá)一個(gè)事物訪問另一個(gè)事物的能力,包括:訪問(《access》)導(dǎo)入(《import》)友元(《friend》)4.綁定依賴較高級的依賴類型,用于綁定模板以創(chuàng)建新的模型元素,
8、包括:綁定(《bind》)泛化關(guān)系存在于一般元素和特殊元素間的分類關(guān)系??梢杂糜陬悺⒂美约捌渌P驮?。描述了一種“isakindof”的關(guān)系。泛化關(guān)系泛化主要用途:多態(tài)繼承單繼承多重繼承關(guān)聯(lián)關(guān)系一種結(jié)構(gòu)關(guān)系。指明事物的對象之間的聯(lián)系。關(guān)聯(lián)關(guān)系1.名稱(Name)2.角色(Role)3.多重性(Multiplicity)4.聚合關(guān)系(Aggregation)5.組合關(guān)系(Composition)6.導(dǎo)航性(Navigation)(1)名稱使用一個(gè)動(dòng)詞或