AIRWILL:入口和出口動(dòng)作
只要轉(zhuǎn)換進(jìn)入或離開某個(gè)狀態(tài),則該狀態(tài)可能包含要被執(zhí)行的動(dòng)作。進(jìn)入一個(gè)狀態(tài)可能會(huì)執(zhí)行一個(gè)依附于該狀態(tài)的入口動(dòng)作。如果轉(zhuǎn)換離開初始狀態(tài),那么在轉(zhuǎn)換的動(dòng)作和新狀態(tài)的入口動(dòng)作被執(zhí)行前,執(zhí)行該狀態(tài)的出口動(dòng)作。 入口動(dòng)作通常用來進(jìn)行狀態(tài)所需要的內(nèi)部初始化。因?yàn)椴荒芑乇芤粋€(gè)入口動(dòng)作,任何狀態(tài)內(nèi)的動(dòng)作在執(zhí)行前都可以假定狀態(tài)的初始化工作已經(jīng)完成,不需要考慮如何進(jìn)入這個(gè)狀態(tài)。同樣,無論何時(shí)從一個(gè)狀態(tài)離開都要執(zhí)行一個(gè)出口動(dòng)作來進(jìn)行后處理工作。當(dāng)出現(xiàn)代表錯(cuò)誤情況的高層轉(zhuǎn)換使嵌套狀態(tài)異常終止時(shí),出口動(dòng)作特別有用。出口動(dòng)作可以處理這種情況以使對(duì)象的狀態(tài)保持前后一致。 入口動(dòng)作和出口動(dòng)作原則上依附于進(jìn)來的和出去的轉(zhuǎn)換,但是將它們聲明為特殊的動(dòng)作可以使?fàn)顟B(tài)的定義不依賴狀態(tài)的轉(zhuǎn)換,因此起到封裝的作用。 比如在電子表的例子中,進(jìn)入計(jì)時(shí)狀態(tài)是要初始清零計(jì)時(shí)器,更改顯示形式。 |
相關(guān)帖子
- 受教受教,各位繼續(xù)發(fā)言…… <無內(nèi)容> - yewuyi 2004-9-2 18:15:02 [ID:1351072 點(diǎn)擊:17] (0 Bytes) (0)
- 聽課了、聽課了 <無內(nèi)容> - dadodo 2004-9-2 17:36:58 [ID:1351015 點(diǎn)擊:18] (0 Bytes) (0)
- 下面再來繼續(xù)介紹子狀態(tài)的概念 - AIRWILL 2004-9-2 17:17:11 [ID:1350984 點(diǎn)擊:25] (735 Bytes) (0)
- 入口和出口動(dòng)作 - AIRWILL 2004-9-2 13:28:08 [ID:1350672 點(diǎn)擊:39] (776 Bytes) (0)
- 呵呵 - fsaok 2004-9-1 18:26:24 [ID:1349567 點(diǎn)擊:62] (22 Bytes) (0)
- 個(gè)人的理解,多指教 - AIRWILL 2004-9-1 16:03:38 [ID:1349416 點(diǎn)擊:75] (1598 Bytes) (0)
- 同意zhbd 的觀點(diǎn), - lm7556 2004-9-1 11:37:45 [ID:1348991 點(diǎn)擊:92] (40 Bytes) (0)
- 關(guān)注 - dylm 2004-9-1 11:05:32 [ID:1348909 點(diǎn)擊:96] (166 Bytes) (0)
- 我也找個(gè)位置坐下來聽課 - zhbd 2004-9-1 0:20:05 [ID:1348531 點(diǎn)擊:113] (359 Bytes) (0)
- 好好好,我趕快搬板凳來聽課 - _21icbbs 2004-8-31 13:52:33 [ID:1347701 點(diǎn)擊:137] (98 Bytes) (0)
- 關(guān)于 狀態(tài) 和 狀態(tài)機(jī) 的描述 - AIRWILL 2004-8-31 13:28:24 [ID:1347669 點(diǎn)擊:141] (1735 Bytes) (0)
- 我是個(gè)外行 - dadodo 2004-8-31 1:40:03 [ID:1347339 點(diǎn)擊:157] (64 Bytes) (0)
- 狀態(tài)機(jī)都有一個(gè)時(shí)鐘信號(hào),有一個(gè)時(shí)序進(jìn)程 - lm7556 2004-8-30 20:35:56 [ID:1347066 點(diǎn)擊:170] (213 Bytes) (0)
- 狀態(tài)機(jī)的時(shí)序 - dafei 2004-8-30 18:09:53 [ID:1346925 點(diǎn)擊:186] (418 Bytes) (0)
- 好??!狀態(tài)機(jī)是一種設(shè)計(jì)方法,非常愿意和大家多研究。 - lm7556 2004-8-30 17:58:38 [ID:1346904 點(diǎn)擊:189] (236 Bytes) (0)
- 狀態(tài)機(jī)方法與編程 - dafei 2004-8-30 14:59:07 [ID:1346528 點(diǎn)擊:221] (1904 Bytes) (0)
- 我覺得狀態(tài)機(jī)最大的優(yōu)點(diǎn)在于 狀態(tài)轉(zhuǎn)換的圖 - AIRWILL 2004-8-30 14:13:26 [ID:1346467 點(diǎn)擊:229] (321 Bytes) (0)
- 1) 基于狀態(tài)標(biāo)志 states 的處理方式; - ambercctv 2004-8-30 13:37:45 [ID:1346399 點(diǎn)擊:247] (49 Bytes) (0)