日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

【每天一个java设计模式(十七)】 - 状态模式

發布時間:2023/12/20 asp.net 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【每天一个java设计模式(十七)】 - 状态模式 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

狀態模式中,類的行為是基于它的狀態改變的,允許對象在內部狀態發生改變時改變它的行為,對象看起來好像修改了它的類。這種類型的設計模式屬于行為型模式。

在狀態模式中,我們創建表示各種狀態的對象和一個行為隨著狀態對象改變而改變的 context 對象。

狀態模式的實現:

1. 創建狀態的抽象類

//抽象狀態類 public abstract class State {public abstract void handle(Context context); }

2. 創建抽象類的兩個具體狀態

//狀態A public class Astate extends State {@Overridepublic void handle(Context context) {System.out.println("當前狀態為A,A狀態執行結束,改變狀態為B");context.setState(new Bstate());} } //狀態B public class Bstate extends State {@Overridepublic void handle(Context context) {System.out.println("當前狀態為B,B狀態執行結束,改變狀態為A");context.setState(new Astate());} }

3. 創建Context

public class Context {private State state;public Context() {this.state = new Astate();}public void setState(State state) {this.state = state;}public State getState() {return (state);}public void handle() {state.handle(this);} }

4. 狀態模式測試

public class StateMain {public static void main(String[] args) {Context context = new Context();context.handle();context.handle();context.handle();context.handle();context.handle();} }

  • 什么是設計模式:【每天一個java設計模式(零)】 - 設計模式基本概念及七大設計原則

創建型模式

  • 工廠模式:【每天一個java設計模式(一)】 - 工廠模式
  • 抽象工廠模式: 【每天一個java設計模式(二)】 - 抽象工廠模式
  • 單例模式:【每天一個java設計模式(三)】 - 單例模式
  • 原型模式:【每天一個java設計模式(四)】 - 原型模式
  • 建造者模式: 【每天一個java設計模式(五)】 - 建造者模式

結構型模型

  • 適配器模式 : 【每天一個java設計模式(六)】 - 適配器模式
  • 代理模式: 【每天一個java設計模式(七)】 - 代理模式模式
  • 橋接模式:【每天一個java設計模式(八)】 - 橋接模式
  • 裝飾器模式:【每天一個java設計模式(九)】 - 裝飾器模式
  • 外觀模式:【每天一個java設計模式(十)】 - 外觀模式
  • 享元模式:【每天一個java設計模式(十一)】 - 享元模式
  • 組合模式:【每天一個java設計模式(十二)】 - 組合模式

行為型模式

  • 模板模式:【每天一個java設計模式(十三)】 - 模板模式
  • 解釋器模式:【每天一個java設計模式(十四)】 - 解釋器模式
  • 命令模式:【每天一個java設計模式(十五)】 - 命令模式
  • 策略模式:【每天一個java設計模式(十六)】 - 策略模式

下一節:
觀察者模式:【每天一個java設計模式(十八)】 - 觀察者模式

總結

以上是生活随笔為你收集整理的【每天一个java设计模式(十七)】 - 状态模式的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。