UML面向?qū)ο笤O(shè)計(jì)與分析教程(第二版)(微課版)第9章-動(dòng)態(tài)分析與活動(dòng)圖_第1頁(yè)
UML面向?qū)ο笤O(shè)計(jì)與分析教程(第二版)(微課版)第9章-動(dòng)態(tài)分析與活動(dòng)圖_第2頁(yè)
UML面向?qū)ο笤O(shè)計(jì)與分析教程(第二版)(微課版)第9章-動(dòng)態(tài)分析與活動(dòng)圖_第3頁(yè)
UML面向?qū)ο笤O(shè)計(jì)與分析教程(第二版)(微課版)第9章-動(dòng)態(tài)分析與活動(dòng)圖_第4頁(yè)
UML面向?qū)ο笤O(shè)計(jì)與分析教程(第二版)(微課版)第9章-動(dòng)態(tài)分析與活動(dòng)圖_第5頁(yè)
已閱讀5頁(yè),還剩50頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

UML面向?qū)ο笤O(shè)計(jì)與分析教程(第二版)(微課版)第9章動(dòng)態(tài)分析與活動(dòng)圖本章的學(xué)習(xí)目標(biāo):理解活動(dòng)圖的建模目的掌握活動(dòng)圖的基本概念和組成要素掌握活動(dòng)圖的UML表示方法理解動(dòng)作狀態(tài)和活動(dòng)狀態(tài)的區(qū)別與聯(lián)系掌握活動(dòng)圖的建模方法活動(dòng)圖融合了事件流圖、Petri網(wǎng)和SDL(SchemaDefinitionLanguage)狀態(tài)建模等技術(shù),用來(lái)在面向?qū)ο笙到y(tǒng)的不同組件之間建模工作流和并發(fā)的處理行為。例如,可以使用活動(dòng)圖描述某個(gè)用例的基本操作流程。活動(dòng)圖的主要作用是描述工作流,其中每個(gè)活動(dòng)都代表工作流中一組動(dòng)作的執(zhí)行?;顒?dòng)圖可用來(lái)為不同類型的工作流建模,工作流是能產(chǎn)生可觀測(cè)值或在執(zhí)行時(shí)生成實(shí)體的動(dòng)作序列。活動(dòng)圖活動(dòng)是某件事情正在進(jìn)行的狀態(tài),它既可以是現(xiàn)實(shí)生活中正在進(jìn)行的某一項(xiàng)工作,也可以是軟件系統(tǒng)某個(gè)類對(duì)象的一個(gè)操作。制訂計(jì)劃(MakePlan)點(diǎn)擊鼠標(biāo)(ClickMouse)活動(dòng)圖描述活動(dòng)的順序,展現(xiàn)從一個(gè)活動(dòng)到另一個(gè)活動(dòng)的控制流?;顒?dòng)圖UML中,活動(dòng)圖中的活動(dòng)既可以是手動(dòng)執(zhí)行的任務(wù),也可以是自動(dòng)執(zhí)行的任務(wù),用圓角矩形表示?;顒?dòng)圖活動(dòng)的起點(diǎn)用來(lái)描述活動(dòng)圖的開始狀態(tài),用黑的實(shí)心圓表示?;顒?dòng)的終止點(diǎn)描述活動(dòng)圖的終止?fàn)顟B(tài),用一個(gè)含有實(shí)心圓的空心圓表示?;顒?dòng)圖活動(dòng)圖活動(dòng)圖與流程圖的區(qū)別活動(dòng)圖描述系統(tǒng)使用的活動(dòng)、判定點(diǎn)和分支,看起來(lái)和流程圖沒什么兩樣,并且傳統(tǒng)的流程圖所能表示的內(nèi)容,大多數(shù)情況下也可以使用活動(dòng)圖表示,但是兩者是有區(qū)別的,不能將兩個(gè)概念混淆?;顒?dòng)圖活動(dòng)圖與流程圖的區(qū)別流程圖著重描述處理過(guò)程,它的主要控制結(jié)構(gòu)是順序、分支和循環(huán),各個(gè)處理過(guò)程之間有嚴(yán)格的順序和時(shí)間關(guān)系。活動(dòng)圖描述的是活動(dòng)的順序關(guān)系,它著重表現(xiàn)的是系統(tǒng)的行為,而非系統(tǒng)的處理過(guò)程?;顒?dòng)圖活動(dòng)圖與流程圖的區(qū)別活動(dòng)圖能夠表示并發(fā)活動(dòng)的情形,而流程圖不能。活動(dòng)圖是面向?qū)ο蟮?,而流程圖是面向過(guò)程的。簡(jiǎn)單地講,活動(dòng)圖是“OO流程圖”?;顒?dòng)圖活動(dòng)圖的作用:描述一個(gè)操作執(zhí)行過(guò)程中所完成的工作。說(shuō)明角色、工作流、組織和對(duì)象是如何工作的?;顒?dòng)圖對(duì)用例描述尤其有用,它可建模用例的工作流,顯示用例內(nèi)部和用例之間的路徑。它可以說(shuō)明用例的實(shí)例是如何執(zhí)行動(dòng)作以及如何改變對(duì)象狀態(tài)?;顒?dòng)圖活動(dòng)圖的作用:顯示如何執(zhí)行一組相關(guān)的動(dòng)作,以及這些動(dòng)作如何影響它們周圍的對(duì)象?;顒?dòng)圖對(duì)理解業(yè)務(wù)處理過(guò)程十分有用?;顒?dòng)圖可以畫出工作流用以描述業(yè)務(wù),有利于與領(lǐng)域?qū)<疫M(jìn)行交流。通過(guò)活動(dòng)圖可以明確業(yè)務(wù)處理操作是如何進(jìn)行的,以及可能產(chǎn)生的變化。描述復(fù)雜過(guò)程的算法,在這種情況下使用的活動(dòng)圖和傳統(tǒng)的程序流程圖的功能是差不多?;顒?dòng)圖組成元素活動(dòng)起點(diǎn)活動(dòng)分叉匯合活動(dòng)終點(diǎn)分支合并動(dòng)作流活動(dòng)圖組成元素組成活動(dòng)圖的圖形元素:動(dòng)作狀態(tài)(ActionState)活動(dòng)狀態(tài)(ActivityState)動(dòng)作流(ActionFlow)分支(Branch)與合并(Merge)分叉(Fork)與匯合(Join)泳道(Swimlane)對(duì)象流(ObjectFlow)活動(dòng)圖組成元素動(dòng)作狀態(tài)動(dòng)作狀態(tài)是指執(zhí)行原子的、不可中斷的動(dòng)作,并在此動(dòng)作完成后通過(guò)完成轉(zhuǎn)換轉(zhuǎn)向另一個(gè)狀態(tài)。在UML中動(dòng)作狀態(tài)使用平滑的圓角矩形表示,動(dòng)作狀態(tài)所表示的動(dòng)作寫在平滑的圓角矩形內(nèi)部。在確定名稱時(shí)應(yīng)該恰當(dāng)?shù)孛?,選擇準(zhǔn)確描述所發(fā)生動(dòng)作的幾個(gè)詞。例如,SaveFile或者CreateNewDocument就是比較恰當(dāng)?shù)幕顒?dòng)名稱,而Run或者Update對(duì)讀者而言是不完整的名稱?;顒?dòng)圖組成元素動(dòng)作狀態(tài)的特點(diǎn):動(dòng)作狀態(tài)是原子的,它是構(gòu)造活動(dòng)圖的最小單位,已經(jīng)無(wú)法分解為更小的部分。動(dòng)作狀態(tài)是不可中斷的,它一旦開始運(yùn)行就不能中斷,一直運(yùn)行到結(jié)束。動(dòng)作狀態(tài)是瞬時(shí)的行為,它所占用的處理時(shí)間極短,有時(shí)其至可以忽略。動(dòng)作狀態(tài)不能有入口動(dòng)作和出口動(dòng)作,更不能有內(nèi)部轉(zhuǎn)移。

活動(dòng)圖組成元素活動(dòng)狀態(tài)活動(dòng)狀態(tài)用于表達(dá)狀態(tài)機(jī)中的非原子的運(yùn)行?;顒?dòng)狀態(tài)的表示圖標(biāo)也是平滑的圓角矩形,并可以在圖標(biāo)中給出入口動(dòng)作和出口動(dòng)作等信息?;顒?dòng)圖組成元素活動(dòng)狀態(tài)的特點(diǎn):活動(dòng)狀態(tài)可以分解成其他子活動(dòng)或動(dòng)作狀態(tài),由于它是一組不可中斷的動(dòng)作或操作的組合,所以可以被中斷?;顒?dòng)狀態(tài)的內(nèi)部活動(dòng)可以用另一個(gè)活動(dòng)圖來(lái)表示。和動(dòng)作狀態(tài)不同,活動(dòng)狀態(tài)可以有入口動(dòng)作和出口動(dòng)作,也可以有內(nèi)部轉(zhuǎn)移。動(dòng)作狀態(tài)是活動(dòng)狀態(tài)的一個(gè)特例,如果某個(gè)活動(dòng)狀態(tài)只包括一個(gè)動(dòng)作,那么它就是一個(gè)動(dòng)作狀態(tài)?;顒?dòng)圖組成元素動(dòng)作流所有動(dòng)作狀態(tài)之間的轉(zhuǎn)換流稱之為動(dòng)作流。與狀態(tài)圖的轉(zhuǎn)換相同,活動(dòng)圖的轉(zhuǎn)換也用帶箭頭的直線表示,箭頭的方向指向轉(zhuǎn)入的方向?;顒?dòng)圖組成元素分支與合并動(dòng)作流一般會(huì)自動(dòng)進(jìn)行控制轉(zhuǎn)換,直到遇到分支。分支在軟件系統(tǒng)流程中很常見,一般用于表示對(duì)象類所具有的條件行為。活動(dòng)圖組成元素分支與合并一個(gè)無(wú)條件的動(dòng)作流,可以在一個(gè)動(dòng)作狀態(tài)的動(dòng)作完成后自動(dòng)觸發(fā)動(dòng)作狀態(tài)的轉(zhuǎn)換以激發(fā)下一個(gè)動(dòng)作狀態(tài)。有條件的動(dòng)作流則需要根據(jù)條件,即一個(gè)布爾表達(dá)式的真假來(lái)判定動(dòng)作的流向。條件行為用分支和合并表達(dá)?;顒?dòng)圖組成元素分支與合并分支是用菱形表示的,它有一個(gè)進(jìn)入轉(zhuǎn)換(箭頭從外指向分支符號(hào)),一個(gè)或多個(gè)出轉(zhuǎn)換(箭頭從分支符號(hào)指向外)。而每個(gè)出轉(zhuǎn)換上都會(huì)有一個(gè)監(jiān)護(hù)條件,用來(lái)表示滿足什么條件的時(shí)候執(zhí)行該轉(zhuǎn)換。出轉(zhuǎn)換的條件應(yīng)當(dāng)是互斥的,這樣可以保證只有一條出轉(zhuǎn)換能夠被觸發(fā)?;顒?dòng)圖組成元素分支與合并合并指的是兩個(gè)或者多個(gè)控制路徑在此匯合的情況。合并表示從對(duì)應(yīng)的分支開始的條件行為的結(jié)束。分支與合并活動(dòng)圖組成元素活動(dòng)圖組成元素分叉與匯合對(duì)象在運(yùn)行時(shí)可能會(huì)存在兩個(gè)或者多個(gè)并發(fā)運(yùn)行的控制流,為了對(duì)并發(fā)的控制流建模,在UML中引入了分叉與匯合的概念。活動(dòng)圖組成元素分叉與匯合分叉和匯合都使用加粗的水平(或者豎直)線段表示?;顒?dòng)圖組成元素分叉與匯合分叉用于將動(dòng)作流分為兩個(gè)或者多個(gè)并發(fā)運(yùn)行的分支,而匯合則用于同步這些并發(fā)分支,以達(dá)到共同完成一項(xiàng)事務(wù)的目的?;顒?dòng)圖組成元素分叉與匯合分叉可以用來(lái)描述并發(fā)線程,每個(gè)分叉可以有一個(gè)輸入轉(zhuǎn)換和兩個(gè)或多個(gè)輸出轉(zhuǎn)換,每個(gè)轉(zhuǎn)換都可以是獨(dú)立的控制流?;顒?dòng)圖組成元素分叉與匯合匯合代表兩個(gè)或多個(gè)并發(fā)控制流同步發(fā)生,當(dāng)所有的控制流都達(dá)到匯合點(diǎn)后,控制才能繼續(xù)往下進(jìn)行。如果一個(gè)處理在其他處理之前到達(dá)了聯(lián)結(jié),它將會(huì)等待,直到所有的處理都準(zhǔn)備好之后才會(huì)向聯(lián)結(jié)傳遞控制權(quán)?;顒?dòng)圖組成元素分叉與匯合每個(gè)匯合可以有兩個(gè)或多個(gè)輸入轉(zhuǎn)換和一個(gè)輸出轉(zhuǎn)換?;顒?dòng)圖組成元素區(qū)分合并與匯合合并結(jié)合了兩個(gè)以上的控制路徑,在任何執(zhí)行中每次只走一條,不同路徑之間是互斥關(guān)系。匯合結(jié)合了兩條或者兩條以上的并行控制路徑,在執(zhí)行過(guò)程中,所有路徑都要走過(guò),先到的控制流要等其他路徑的控制流到達(dá)后才能繼續(xù)運(yùn)行。活動(dòng)圖組成元素對(duì)象流活動(dòng)可以輸入和輸出對(duì)象,并可以修改對(duì)象狀態(tài)。我們能夠在活動(dòng)圖上用對(duì)象流表示這些。對(duì)象流是動(dòng)作狀態(tài)或者活動(dòng)狀態(tài)與對(duì)象之間的依賴關(guān)系對(duì)象流表示動(dòng)作使用對(duì)象或者動(dòng)作對(duì)對(duì)象的影響?;顒?dòng)圖組成元素對(duì)象流在活動(dòng)圖中,對(duì)象流用帶有箭頭的虛線表示。如果箭頭從動(dòng)作狀態(tài)出發(fā)指向?qū)ο?,則表示動(dòng)作對(duì)對(duì)象施加了一定的影響。活動(dòng)圖組成元素對(duì)象流施加的影響包括創(chuàng)建、修改和撤銷等。如果箭頭從對(duì)象指向動(dòng)作狀態(tài),則表示該動(dòng)作使用對(duì)象流所指向的對(duì)象。反過(guò)來(lái),動(dòng)作依賴對(duì)象的話,箭頭從對(duì)象指向動(dòng)作?;顒?dòng)圖組成元素對(duì)象流中對(duì)象的特點(diǎn):一個(gè)對(duì)象可以由多個(gè)動(dòng)作操縱;一個(gè)動(dòng)作輸出的對(duì)象可以作為另一個(gè)動(dòng)作輸入的對(duì)象;在活動(dòng)圖中,同一個(gè)對(duì)象可以多次出現(xiàn),它的每一次出現(xiàn)表明該對(duì)象正處于對(duì)象生存期的不同時(shí)間點(diǎn)?;顒?dòng)圖組成元素泳道泳道將活動(dòng)圖中的活動(dòng)按職責(zé)化分為若干組,并把每一組指定給負(fù)責(zé)這組活動(dòng)的業(yè)務(wù)組織在活動(dòng)圖中,泳道用垂直實(shí)線繪出,垂直線分隔的區(qū)域就是泳道。在泳道上方可以給出泳道的名字,負(fù)責(zé)泳道內(nèi)的全部活動(dòng)。在包含泳道的活動(dòng)圖中,每個(gè)活動(dòng)只能明確地屬于一個(gè)泳道。活動(dòng)圖組成元素泳道活動(dòng)分解一個(gè)活動(dòng)可以分為若干個(gè)動(dòng)作或子活動(dòng),這些動(dòng)作和子活動(dòng)本身又可以組成一個(gè)活動(dòng)圖。不含內(nèi)嵌活動(dòng)或動(dòng)作的活動(dòng)稱之為簡(jiǎn)單活動(dòng)嵌套了若干活動(dòng)或動(dòng)作的活動(dòng)稱之為組合活動(dòng),組合活動(dòng)有自己的名字和相應(yīng)的子活動(dòng)圖活動(dòng)分解使用ROSE創(chuàng)建活動(dòng)圖要?jiǎng)?chuàng)建活動(dòng)圖,首先展開“LogicView”菜單項(xiàng),然后在“LogicView”圖標(biāo)上單擊鼠標(biāo)右鍵,在彈出的菜單中選擇“New”下的“ActivityDiagram”選項(xiàng)建立新的活動(dòng)圖。1、創(chuàng)建活動(dòng)圖使用ROSE創(chuàng)建活動(dòng)圖選擇之后,Rose在“LogicView”目錄下創(chuàng)建“State/ActivityModel”子目錄,目錄下是新建的活動(dòng)圖“NewDiagram”,右鍵單擊活動(dòng)圖圖標(biāo),在彈出菜單中選擇“Rename”來(lái)修改新創(chuàng)建的活動(dòng)圖名字。1、創(chuàng)建活動(dòng)圖使用ROSE創(chuàng)建活動(dòng)圖在活動(dòng)圖建立以后,雙擊活動(dòng)圖圖標(biāo),會(huì)出現(xiàn)活動(dòng)圖繪制區(qū)域1、創(chuàng)建活動(dòng)圖使用ROSE創(chuàng)建活動(dòng)圖活動(dòng)圖有初始和終止?fàn)顟B(tài)。初始狀態(tài)在活動(dòng)圖中用實(shí)心圓表示,終止?fàn)顟B(tài)在活動(dòng)圖中用含有實(shí)心圓的空心圓表示。鼠標(biāo)左鍵點(diǎn)擊活動(dòng)圖工具欄中初始狀態(tài)圖標(biāo),然后在繪制區(qū)域要繪制的地方單擊鼠標(biāo)左鍵就可以創(chuàng)建初始狀態(tài)。終止?fàn)顟B(tài)的創(chuàng)建方法和初始狀態(tài)相同。2、創(chuàng)建初始和終止?fàn)顟B(tài)使用ROSE創(chuàng)建活動(dòng)圖要?jiǎng)?chuàng)建動(dòng)作狀態(tài),首先點(diǎn)擊活動(dòng)圖工具欄中的“Activity”圖標(biāo),然后在繪制區(qū)域要繪制動(dòng)作狀態(tài)的地方單擊鼠標(biāo)左鍵。3、創(chuàng)建動(dòng)作狀態(tài)修改動(dòng)作狀態(tài)的屬性信息。首先雙擊動(dòng)作狀態(tài)圖標(biāo),在彈出的對(duì)話框“General”選項(xiàng)卡里進(jìn)行如名稱“Name”和文檔說(shuō)明“Documentation”等屬性的設(shè)置。使用ROSE創(chuàng)建活動(dòng)圖用鼠標(biāo)左鍵雙擊活動(dòng)圖圖標(biāo),在彈出的對(duì)話框中選擇“Action”選項(xiàng)卡。然后在空白處單擊鼠標(biāo)右鍵,在彈出的右鍵菜單中選擇“Insert”菜單項(xiàng)。4、創(chuàng)建活動(dòng)狀態(tài)使用ROSE創(chuàng)建活動(dòng)圖接下來(lái)雙擊列表中出現(xiàn)的默認(rèn)動(dòng)作“Entry/”,在彈出的對(duì)話框的“When”選項(xiàng)下拉列表中有“ONentry”、“OnExit”、“Do”和“OnEvent”等動(dòng)作選項(xiàng)。用戶可以根據(jù)自己的需求來(lái)選擇需要的動(dòng)作,“Name”字段要求用戶輸入動(dòng)作的名稱。4、創(chuàng)建活動(dòng)狀態(tài)使用ROSE創(chuàng)建活動(dòng)圖要?jiǎng)?chuàng)建轉(zhuǎn)換,首先點(diǎn)擊工具欄中的“StateTransition”圖標(biāo),然后在兩個(gè)要轉(zhuǎn)換的動(dòng)作狀態(tài)之間拖動(dòng)鼠標(biāo)。5、創(chuàng)建轉(zhuǎn)換使用ROSE創(chuàng)建活動(dòng)圖創(chuàng)建分叉與結(jié)合,首先點(diǎn)擊工具欄中的“HorizontalSynchronization”圖標(biāo)按鈕,在繪制區(qū)域要?jiǎng)?chuàng)建分叉與結(jié)合的地方單擊鼠標(biāo)左鍵。6、創(chuàng)建分叉與匯合使用ROSE創(chuàng)建活動(dòng)圖首先點(diǎn)擊工具欄中的“Decision”圖標(biāo)按鈕,然后在繪制區(qū)域要?jiǎng)?chuàng)建分支與合并的地方單擊鼠標(biāo)左鍵。7、創(chuàng)建分支與合并使用ROSE創(chuàng)建活動(dòng)圖要?jiǎng)?chuàng)建泳道,首先點(diǎn)擊工具欄中的“Swimlane”圖標(biāo)按鈕,然后在繪制區(qū)域點(diǎn)擊鼠標(biāo)左鍵,就可以創(chuàng)建新的泳道。接下來(lái)可以修改泳道的名字等屬性。選中需要修改的泳道,單擊鼠標(biāo)右鍵,在彈出的菜單中選擇“OpenSpecification”。彈出的對(duì)話框中的“Name”字段可以修改泳道的名字。8、創(chuàng)建泳道使用ROSE創(chuàng)建活動(dòng)圖對(duì)象流的狀態(tài)表示活動(dòng)中輸入或輸出的對(duì)象。對(duì)象流是將對(duì)象流狀態(tài)作為輸入或輸出的控制流。要?jiǎng)?chuàng)建對(duì)象流,首先要?jiǎng)?chuàng)建對(duì)象流狀態(tài)。對(duì)象流狀態(tài)的創(chuàng)建方法與普通對(duì)象的創(chuàng)建方法相同:首先單擊工具欄中的Object圖標(biāo)按鈕,在繪制區(qū)域單擊鼠標(biāo)左鍵。創(chuàng)建好對(duì)象流的狀態(tài)后,就可以開始創(chuàng)建對(duì)象流:首先單擊工具欄中的圖標(biāo),然后在活動(dòng)和對(duì)象之間拖動(dòng)鼠標(biāo)創(chuàng)建對(duì)象流。9、創(chuàng)建對(duì)象流狀態(tài)與對(duì)象流創(chuàng)建活動(dòng)圖的步驟:確定工作流的初始狀態(tài)和終止?fàn)顟B(tài),明確工作流的邊界。對(duì)動(dòng)作狀態(tài)或活動(dòng)狀態(tài)建模,找出隨時(shí)間發(fā)生的動(dòng)作和活動(dòng),將它們表示為動(dòng)作狀態(tài)或活動(dòng)狀態(tài)。對(duì)動(dòng)作流建模,對(duì)動(dòng)作流建模時(shí)可以首先處理順序動(dòng)作,接著處理分支與合并等條件行為,然后處理分叉與匯合等并發(fā)行為。對(duì)對(duì)象流建模,找出與工作流相關(guān)的重要對(duì)象,并將其連接到相應(yīng)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論