您好,登錄后才能下訂單哦!
這篇文章主要介紹EA畫UML圖中如何為類添加操作和方法,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
操作
操作指明了目標對象狀態的轉換或返回給操作調用者值的查詢。它有名稱和參數列表,包括返回參數。操作指定了行為的結果,而不是行為本身,行為可以是一個方法,一次狀態機轉換或其他。
方法
方法是一個過程,它實現了一個操作,它有一個算法或過程描述,調用如果解析為一個方法,將導致該過程被執行。
以上是ULM2.0對操作的方法的說明。你看懂了么,反正我是琢磨了好一會。那我就舉個例子吧。
說有一個駕駛者基類,它有有兩個派生類,分別是車主和小偷。駕駛者類聲明了一個啟動汽車的操作,車主類使用(實現)的方法是擰車鑰匙,小偷類使用(實現)的方法是直接接發動機電源線(電影里常有的)。
怎么樣,好點沒,下面繼續今天的話題。
屬性窗口的打開方法:
雙擊類圖中的對應類框圖,選擇【General】以后,點擊【Operation】按鈕。
2.從模型樹中選擇對應的類節點,打開上下文菜單并選擇【Operations...】菜單項。
無論哪種方法都可以打開下面的操作設定對話框。嚴格講這并不是操作自己的對話框,而是屬性和操作共同的對話框。本文只關注操作部分。
添加新操作的操作主要是在紅綠藍三個矩形框中進行的。和上篇文章一樣我們在這里只說明有(zhi)關(dao)的項目。
基本項目
基本項目通過紅框中的列表控件來設置。
Name:變量名,可以自由輸入文本。
Parameters:在參數設定部分詳細說明,此處省略。
Retun Type:數據類型,可以自由輸入文本,也可以點從下拉菜單中選擇。在下拉菜單的最下面,還有一個【Select Type...】選項,提供了從工程中選擇類型的功能。但是選擇的結果也只是作為文本保存,起到的作用僅限于輸入輔助。這一點和屬性類型一樣。
Scope:設定操作的可視性。從下拉列表中選擇,一共有四個選項:Public/Protected/Private/Package。Package也是可選的,表示也沒有問題。但是在生成代碼時當作Public處理。
Stereotype:可以設定一些分類信息,比如property set,property get,或者constructor等。
擴展項目
操作列表中有操作被選中時,可以設定該操縱的擴展屬性。
Concurrency:用于自定操作的并發屬性。可能的選項有:
sequential:同時只能有一個調用發生。如果并發調用發生,則結果不保證。
guarded:允許并發調用發生,但同時只允許一個調用執行。
concurrent:允許并發調用發生,并保證可以正確地并發執行。
Virtual:用于指定抽象操作(虛函數)。
Static:表明該操作是類操作(靜態函數),而非實例操作。
參數設定項目
參數定義主要是通過藍框中的【Parameters】表單來進行的。可以定義多個參數,并設定他們的屬性。方法和類設定屬性的方法基本一致,此處省略。
我們試著為Person類追加了兩個方法,一個是靜態方法GetMarryAge,一個是虛函數Show。Person類變成了如下的樣子。
可以看到靜態方法GetMarryAge的下面有一條橫線,而Show操作被表示成斜體。這就是UML中靜態方法和抽象操作的表達方式。
如果這還不夠,還可以再往前走一步,生成代碼。在Person類上點擊鼠標右鍵調出上下文菜單選中【Code Engineering】-【Generate
Code】可以調出如下的生成代碼對話框。
在選擇路徑之后,按下【Generate】按鈕,我們既可以得到以下代碼。
首先是頭文件
然后是cpp
不做重復的事情,這才是正確的方法應該有的樣子。
以上是“EA畫UML圖中如何為類添加操作和方法”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。