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

首頁 > 編程 > Java > 正文

輕松掌握Java狀態模式

2019-11-26 13:47:05
字體:
來源:轉載
供稿:網友

定義:在狀態模式(State Pattern)中,類的行為是基于它的狀態改變的。

特點:

1、封裝了轉換規則。

2、枚舉可能的狀態,在枚舉狀態之前需要確定狀態種類。

3、將所有與某個狀態有關的行為放到一個類中,并且可以方便地增加新的狀態,只需要改變對象狀態即可改變對象的行為。

4、允許狀態轉換邏輯與狀態對象合成一體,而不是某一個巨大的條件語句塊。

5、可以讓多個環境對象共享一個狀態對象,從而減少系統中對象的個數。

企業及開發和常用框架中的應用:

實例:

public class Demo { public static void main(String[] args) { Context context = new Context(); State move = new Move(); move.show(context); State stop = new Stop(); stop.show(context); }}class Context{ private State state;  public void setState(State state){ System.out.println("給物體加持狀態"); this.state = state; }}interface State{ void show(Context context);}class Move implements State{ public void show(Context context) { context.setState(this); System.out.println("物體處于運動狀態"); }}class Stop implements State{ public void show(Context context) { context.setState(this); System.out.println("物體處于靜止狀態"); }}

狀態模式是用于對象狀態比較多的情況,比如完成一件事的時候有未完成、已完成、進行中、擱置等狀態,這時候就可以考慮是用狀態模式。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 玉溪市| 运城市| 子长县| 陇川县| 洞口县| 余江县| 渑池县| 长丰县| 阳高县| 曲水县| 南宫市| 宽甸| 新干县| 中宁县| 老河口市| 宝坻区| 兴山县| 察隅县| 平定县| 晋中市| 射阳县| 洛阳市| 仁怀市| 垣曲县| 溧水县| 嘉善县| 定州市| 山西省| 慈溪市| 米泉市| 大同市| 昭苏县| 大方县| 和平县| 诸暨市| 彩票| 沙坪坝区| 惠安县| 紫云| 桐乡市| 阳信县|