偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

UML狀態(tài)機(jī)視圖解析

開發(fā) 架構(gòu)
UML狀態(tài)機(jī)視圖你是否熟悉,本節(jié)就向大家介紹一下UML狀態(tài)機(jī)視圖的概念,它是通過對類對象的生存周期建立模型來描述對象隨時間變化的動態(tài)行為。

本節(jié)和大家一起學(xué)習(xí)一下UML狀態(tài)機(jī)視圖,狀態(tài)機(jī)用于描述類的行為,但它們也描述用例、協(xié)作和方法的動態(tài)行為。這里主要介紹一下UML狀態(tài)機(jī)和組成狀態(tài)兩大部分內(nèi)容,希望本節(jié)的介紹對你有所幫助。

UML狀態(tài)機(jī)視圖概述

概述

UML狀態(tài)機(jī)視圖通過對類對象的生存周期建立模型來描述對象隨時間變化的動態(tài)行為。每一個對象都被看作是通過對事件進(jìn)行探測并做出回應(yīng)來與外界其他部分通信的獨(dú)立的實(shí)體。事件表示對象可以探測到的事物的一種運(yùn)動變化—如接受到從一個對象到另一個對象的調(diào)用或信號、某些值的改變或一個時間段的終結(jié)。任何影響對象的事物都可以是事件,真實(shí)世界所發(fā)生的事物的模型通過從外部世界到系統(tǒng)的信號來建造的。

狀態(tài)是給定類的對象的一組屬性值,這組屬性值對所發(fā)生的事件具有相同性質(zhì)的反應(yīng)。換而言之,處于相同狀態(tài)的對象對同一事件具有同樣方式的反應(yīng),所以當(dāng)給定狀態(tài)下的多個對象當(dāng)接受到相同事件時會執(zhí)行相同的動作,然而處于不同狀態(tài)下的對象會通過不同的動作對同一事件做出不同的反應(yīng)。例如,當(dāng)自動答復(fù)機(jī)處于處理事務(wù)狀態(tài)或空閑狀態(tài)時會對取消鍵做出不同的反應(yīng)。

狀態(tài)機(jī)用于描述類的行為,但它們也描述用例、協(xié)作和方法的動態(tài)行為。對這些對象方面而言,一個狀態(tài)代表了執(zhí)行中的一步。我們通常用類和對象來描述狀態(tài)機(jī),但是它也可以被其他元素所直接應(yīng)用。

狀態(tài)機(jī)

狀態(tài)機(jī)是展示狀態(tài)與狀態(tài)轉(zhuǎn)換的圖。通常一個狀態(tài)機(jī)依附于一個類,并且描述一個類的實(shí)例對接受到的事件所發(fā)生的反應(yīng)。狀態(tài)機(jī)也可以依附于操作、用例和協(xié)作并描述它們的執(zhí)行過程。

狀態(tài)機(jī)是一個類的對象所有可能的生命歷程的模型。對象被孤立地從系統(tǒng)中抽出和考察,任何來自外部的影響被概述為事件。當(dāng)對象探測到一個事件后,它依照當(dāng)前的狀態(tài)做出反應(yīng),反應(yīng)包括執(zhí)行一個動作和轉(zhuǎn)換到新狀態(tài)。狀態(tài)機(jī)可以構(gòu)造成繼承轉(zhuǎn)換,也能夠?qū)Σl(fā)行為建立模型。

狀態(tài)機(jī)是一個對象的局部視圖,一個將對象與其外部世界分離開來并獨(dú)立考查其行為的圖。利用狀態(tài)機(jī)可以精確地描述行為,但不適合綜合理解系統(tǒng)執(zhí)行操作。如果要更好地理解整個系統(tǒng)范圍內(nèi)的行為產(chǎn)生的影響,那么交互視圖將更有用些。然而,狀態(tài)機(jī)有助于理解如用戶接口和設(shè)備控制器這樣的控制機(jī)。

組成狀態(tài)

一個簡單狀態(tài)沒有子結(jié)構(gòu),只帶有一組轉(zhuǎn)換和可能的入口和出口動作。UML狀態(tài)機(jī)視圖的組成狀態(tài)是一個被分解成順序的或并發(fā)的子狀態(tài)的狀態(tài)。表6–4列出了各種狀態(tài)。

表6–4狀態(tài)的種類

將狀態(tài)分解成互斥的子狀態(tài)是對狀態(tài)的一種專門化處理。一個外部狀態(tài)被細(xì)分成多個內(nèi)部子狀態(tài),每一個子狀態(tài)都繼承了外部狀態(tài)的轉(zhuǎn)換。在某一時間只有一個子狀態(tài)處于激活狀態(tài)。外部狀態(tài)表達(dá)了每一個內(nèi)部狀態(tài)都具有的條件。

進(jìn)入或離開一個組成狀態(tài)的轉(zhuǎn)換會引起入口動作或出口動作的執(zhí)行。如果有多個組成狀態(tài),跨越多個層次的轉(zhuǎn)換會引起多重入口動作(最外層***執(zhí)行)和出口動作(最內(nèi)層***執(zhí)行)的執(zhí)行。如果轉(zhuǎn)換帶有動作,那么這個動作在入口動作執(zhí)行后,出口動作執(zhí)行前執(zhí)行。

UML狀態(tài)機(jī)視圖中組成狀態(tài)也可能在其內(nèi)部具有一個初始狀態(tài)。組成狀態(tài)邊界上的轉(zhuǎn)換隱含為初始狀態(tài)上的轉(zhuǎn)換。一個新對象起始于它的最外層的初始狀態(tài)。如果一個對象到達(dá)了它最外層狀態(tài)的終止?fàn)顟B(tài),那么該對象將被銷毀。初始狀態(tài)、終止?fàn)顟B(tài)、入口動作和出口動作封裝了狀態(tài)的定義,使?fàn)顟B(tài)的定義與進(jìn)出狀態(tài)的轉(zhuǎn)換無關(guān)。

圖6–5展示了一個狀態(tài)的順序分解,其中包括一個初始狀態(tài)。這是售票系統(tǒng)的狀態(tài)機(jī)模型。

圖6-5狀態(tài)機(jī)

將一個狀態(tài)分解成并發(fā)的多個子狀態(tài)代表相互獨(dú)立的并行處理過程。當(dāng)進(jìn)入一個并發(fā)超狀態(tài)時,控制線程的數(shù)目增加;當(dāng)離開一個并發(fā)超狀態(tài)時,控制線程的數(shù)目減少對于每一個狀態(tài)而言,并發(fā)通常依靠不同的對象實(shí)現(xiàn),但是,并發(fā)子狀態(tài)還可以代表一個單獨(dú)狀態(tài)內(nèi)部的邏輯并發(fā)關(guān)系。圖6–6展示了選修一門大學(xué)課程的并發(fā)分解。

圖6–6帶有并發(fā)組成狀態(tài)的狀態(tài)機(jī)

圖6–7子機(jī)器狀態(tài)

 

UML狀態(tài)機(jī)視圖中通常,可以在一個狀態(tài)機(jī)中使用其他狀態(tài)機(jī)的一部分,這種可重用性會帶來一些方便。狀態(tài)機(jī)可以命名,并可以用名字引用其他一個或多個狀態(tài)機(jī)。目標(biāo)狀態(tài)機(jī)是一個子機(jī)器,引用這個子機(jī)器的狀態(tài)叫做子機(jī)器引用狀態(tài)。它的含義是在需要引用的地方用一個狀態(tài)機(jī)來替換原有內(nèi)容。一個狀態(tài)機(jī)可以包含一個活動,即可以包含一個處理過程或一個需要消耗時間才能完成的持續(xù)過程或是可以被中斷的事件,而子機(jī)器不能圖6-7演示了子機(jī)器的引用。

進(jìn)入一個子機(jī)器引用狀態(tài)的轉(zhuǎn)換會激活目標(biāo)子機(jī)器的初始狀態(tài)。要進(jìn)入其他狀態(tài)的子機(jī)器,需要在子機(jī)器引用狀態(tài)中安置一個或多個樁狀態(tài)。樁狀態(tài)用于在子機(jī)器中標(biāo)識狀態(tài)。

【編輯推薦】

  1. UML狀態(tài)機(jī)圖繪制方法及其應(yīng)用說明
  2. 揭秘UML狀態(tài)機(jī)視圖中的四大事件
  3. 解析UML狀態(tài)機(jī)視圖狀態(tài)和轉(zhuǎn)換
  4. 教你繪制整潔的UML圖
  5. UML狀態(tài)圖創(chuàng)建過程中需要注意問題
責(zé)任編輯:佚名 來源: uml.org.cn
相關(guān)推薦

2010-06-18 12:38:38

UML狀態(tài)機(jī)視圖

2010-07-12 15:00:56

UML狀態(tài)機(jī)視圖

2010-07-12 15:09:20

UML狀態(tài)機(jī)視圖

2010-07-08 13:03:31

UML狀態(tài)機(jī)圖

2010-06-13 16:16:21

UML狀態(tài)圖

2010-06-18 13:08:05

UML狀態(tài)機(jī)視圖

2010-06-12 11:11:55

UML應(yīng)用

2010-06-12 16:42:03

UML設(shè)計(jì)

2010-06-18 13:15:07

UML狀態(tài)機(jī)圖

2010-06-11 17:34:37

UML對象圖

2010-06-30 14:46:49

UML類圖

2010-06-11 16:38:22

UML協(xié)作圖

2010-06-13 12:40:44

UML序列圖

2010-06-13 15:58:03

UML類圖

2010-06-13 16:07:56

UML活動圖

2010-06-28 18:44:54

UML對象圖

2023-03-06 07:35:30

狀態(tài)機(jī)工具訂單狀態(tài)

2010-06-11 11:28:00

UML視圖

2010-06-13 14:37:04

UML實(shí)踐

2010-06-13 14:51:27

UML實(shí)踐
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號