您好,登錄后才能下訂單哦!
這篇文章主要介紹“UML的依賴特征和使用時的注意事項”,在日常操作中,相信很多人在UML的依賴特征和使用時的注意事項問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”UML的依賴特征和使用時的注意事項”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
UML依賴關系的特征
對于兩個相對獨立的系統,當一個系統負責構造另一個系統的實例,或者依賴另一個系統的服務時,這兩個系統之間主要體現為依賴關系,例如生產零件的機器和零件,機器負責構造零件對象。再例如充電電池和充電器,充電電池通過充電器來充電。再例如自行車Bicycle和打氣筒Pump,自行車通過打氣筒來充氣。圖1-39為Bicycle類與Pump類的類框圖。
圖1-39Bicycle類與Pump類的依賴關系
Bicycle類和Pump類之間是UML依賴關系,在Bicycle類中無需定義Pump類型的變量。Bicycle類的定義如下:
publicclassBicycle{ /**給輪胎充氣*/ publicvoidexpand(Pumppump){ pump.blow(); } }
在現時生活中,通常不會為某一輛自行車配備專門的打氣筒,而是在需要充氣的時候,從附近某個修車棚里借個打氣筒打氣。在程序代碼中,表現為Bicycle類的expand()方法有個Pump類型的參數。以下程序代碼表示某輛自行車先后到兩個修車棚里充氣:
myBicycle.expand(pumpFromRepairShed1);//到***個修車棚里充氣
myBicycle.expand(pumpFromRepairShed2);//若干天后,到第二個修車棚里充氣
UML依賴關系使用注意事項
1.對存在依賴關系的兩個類生成代碼時,并不對關系的類增加屬性。但產生支持關系所需的特定語句。在C++中,生成代碼中會包括必要的#include語句。
例如類A依賴于類B,類A沒有B屬性,因此要用其他方法查找B。有三種方法:
如果B是全局的,則類A知道它存在。
如果B實例化為類A操作中的本地變量,則類A知道它存在。
如果B作為參數傳遞到類A中,則類A知道它存在。
在依賴關系中,必須采用這三種方法之一。
關聯于UML依賴的第二個差別在于方向,關聯可以是雙向的,而依賴只能是單向的。
2.包之間同樣存在依賴性。例如包A依賴于包B。則不能直接在另一個應用程序中復用A包,而要同時復用B包。而B包更容易復用,因為它沒有依賴于其他包。
要確定包依賴性關系,就要檢查Class框圖中的關系。如果不同包中的類之間有關系,則包也有關系。
生成包依賴關系時,要盡量避免循環依賴性。要避免循環依賴,可以把一個包一分為二。
到此,關于“UML的依賴特征和使用時的注意事項”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。