State 状态
State 状态
- 根据状态决定行为
- state状态抽象为接口,内有m种行为(抽象方法),n个子类再实现这些行为。事务本身的类聚合状态,在内部的M种方法中调用state的实例即可

public class State { public static void main(String[] args) { States states = new Happy(); MM m = new MM(states); m.Smile(); m.Say(); }}interface States{ void Smile(); void Say();}class MM{ States states; public MM(States states) { this.states = states; } void Smile(){ states.Smile(); } void Say(){ states.Say(); }}class Happy implements States{ @Override public void Smile() { System.out.println("HappyMM Smile"); } @Override public void Say() { System.out.println("HappyMM Say"); }}