简体中文 | 繁体中文

大话设计模式-----第165章


末路求索 都市拣宝 不速之婚 强情夺爱:掠爱霸情总裁 总裁的专宠 狂夫爱妻 相公有点坏 至尊农民工 萌妻不乖:危险首席勿靠近 萌妻讨喜:老公太高冷 驯服高傲娇妻 晚婚:吾妻销魂 驯龙记 带着宋词去修仙 重生之流氓少爷 丧嫁 倾世执着 美男军团养成 异世农家 再回首:中国共产党历史新探
第165章

小A:“状态模式的实质是什么?”

大B:“使用状态模式前,客户端外界需要介入改变状态,而状态改变的实现是琐碎或复杂的。使用状态模式后,客户端外界可以直接使用事件Event实现,根本不必关心该事件导致如何状态变化,这些是由状态机等内部实现。这是一种Event-condition-State,状态模式封装了condition-State部分。每个状态形成一个子类,每个状态只关心它的下一个可能状态,从而无形中形成了状态转换的规则。如果新的状态加入,只涉及它的前一个状态修改和定义。”

小A:“都有些什么方法实现状态转换?”

大B:“一个在每个状态实现next(),指定下一个状态;还有一种方法,设定一个StateOwner,在StateOwner设定stateEnter状态进入和stateExit状态退出行为。状态从一个方面说明了流程,流程是随时间而改变,状态是截取流程某个时间片。”

推荐小说