0
我正在使用.NET
框架練習編程,我非常困惑於Singleton pattern
和State pattern
。我嘗試過使用單例模式,現在我怎樣才能將狀態模式實現到同一個類。我的代碼是BankAccount
已autoimplemented財產即AccountStateID
我該如何解決一個類中的單態模式狀態模式
public class BronzeState : AccountStates
{
//static member
private static BronzeState bronzeState;
//constructor
private BronzeState()
{
this.LowerLimit = 0;
this.UpperLimit = 5000;
this.Rate = 0.01/100;
}
public static BronzeState GetInstance()
{
if (bronzeState != null)
return bronzeState;
else
{
bronzeState = new BronzeState();
return bronzeState;
}
}
public void StateChangeCheck(BankAccount bankAccount)
{
if (bankAccount.Balance > UpperLimit)
{
bankAccount.AccountState = new SilverState();
}
}
}
//same goes with GoldSte , SilverState, PlatinumState.
我唯一的問題是我如何使用狀態模式來改變狀態,如果餘額爲更多的上限。