
you are here
409
10
章
State
パターン
public class WinnerState implements State {
//
インスタンス変数とコンストラクタ
// insertQuarter
エラーメッセージ
// ejectQuarter
エラーメッセージ
// turnCrank
エラーメッセージ
public void dispense() {
gumballMachine.releaseBall();
if (gumballMachine.getCount() == 0) {
gumballMachine.setState(gumballMachine.getSoldOutState());
} else {
gumballMachine.releaseBall();
System.out.println("
当たりです!
25
セントで
2
つのガムボールがもらえます
");
if (gumballMachine.getCount() > 0) {
gumballMachine.setState(gumballMachine.getNoQuarterState());
} else {
System.out.println("
おっと、ガムボールがなくなりました!
");
gumballMachine.setState(gumballMachine.getSoldOutState());
}
}
}
}
public class GumballMachine { ...