java状态模式所有情况_轻松掌握Java状态模式
定義:在狀態模式(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("物體處于靜止狀態");
}
}
狀態模式是用于對象狀態比較多的情況,比如完成一件事的時候有未完成、已完成、進行中、擱置等狀態,這時候就可以考慮是用狀態模式。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
總結
以上是生活随笔為你收集整理的java状态模式所有情况_轻松掌握Java状态模式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java程序结构_Java 程序结构说明
- 下一篇: java美元兑换,(Java实现) 美元