国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

學習JavaScript設計模式之狀態模式

2019-11-20 10:50:00
字體:
來源:轉載
供稿:網友

狀態模式的關鍵是區分事物內部的狀態,事物內部狀態的改變往往會帶來事物的行為改變。

當電燈開著,此時按下開關,電燈會切換到關閉狀態;再按一次開關,電燈又將被打開。同一個開關在不同的狀態下,表現出來的行為是不一樣的。

一、有限狀態機

  • 狀態總數(state)是有限的。
  • 任一時刻,只處在一種狀態之中。
  • 某種條件下,會從一種狀態轉變(transition)到另一種狀態。

允許一個對象在其內部狀態改變時改變它的行為,對象看起來似乎修改了它的類。
解釋:
(1)將狀態封裝成獨立的類,并將請求委托給當前的狀態對象,當對象的內部狀態發生改變時,會帶來不同的行為變化。
(2)使用的對象,在不同的狀態下具有截然不同的行為(委托效果)

談到封裝,一般優先考慮封裝對象的行為,而不是對象的狀態。
但在狀態模式中剛好相反,狀態模式的關鍵是把事物的每種狀態都封裝成單獨的類。

二、示例

點燈程序 (弱光

主站蜘蛛池模板: 长武县| 分宜县| 唐山市| 辽宁省| 山阳县| 特克斯县| 汉阴县| 玉山县| 榕江县| 略阳县| 大兴区| 台北县| 长岛县| 陈巴尔虎旗| 长顺县| 株洲县| 阜宁县| 五家渠市| 饶平县| 闻喜县| 汝南县| 沈丘县| 上思县| 聊城市| 广水市| 色达县| 慈利县| 乐业县| 伊川县| 治县。| 土默特右旗| 扎赉特旗| 长宁区| 敦煌市| 夏河县| 宝清县| 忻城县| 武陟县| 邳州市| 香港| 武穴市|