feat: 状态机现可提供初始化状态.

This commit is contained in:
2025-03-27 11:32:20 +08:00
parent 5d73a20428
commit f0db621968
7 changed files with 85 additions and 53 deletions

View File

@@ -26,6 +26,11 @@ public abstract class AbstractStateManager<S> implements StateManager<S> {
*/
private volatile int index;
/**
* 默认状态序号
*/
private int defaultIndex = 0;
/**
* 锁
*/
@@ -180,7 +185,7 @@ public abstract class AbstractStateManager<S> implements StateManager<S> {
* @return 是第一个时返回真, 否则返回假.
*/
protected boolean isFirst() {
return index == getDefault();
return index == 0;
}
/**
@@ -203,6 +208,15 @@ public abstract class AbstractStateManager<S> implements StateManager<S> {
* 状态序号默认值(等同于默认状态)
*/
protected int getDefault() {
return 0;
return defaultIndex;
}
/**
* 设置默认值
*
* @param defaultIndex 默认值
*/
protected void setDefault(int defaultIndex) {
this.defaultIndex = defaultIndex;
}
}