设计模式-----状态模式
/**一个类中的方法是不稳定的,他在不同的状态下需要不同的方法,那么我们就应该把方法剥离出去,随着状态来提供方法。。。MM的状态是不固定的,他在高兴,犹豫,伤心的时候都会说话,吃饭,聊天,但是不同的状态下的吃饭,聊天是不一样的。。。。所以我们得根据不同的状态来调用不同的方法。。。而状态是会扩展的,可能有好多种状态。。。。但是做什么事情不会扩展技术上:因为状态扩展,所以状态需要被抽出来,=>有一个状态接口,而每个状态下面有具体的做某些事情的实现,所以在调用的守侯就调用某个状态的吃饭,聊天*/public interface State {public void eating();public void saying();}public class HappyState implements State {@Overridepublic void eating() {// TODO Auto-generated method stub}@Overridepublic void saying() {// TODO Auto-generated method stub}}public class MM {private String name;State s = new HappyState();public String getName() {return name;}public void setName(String name) {this.name = name;}public void saying(){s.saying();}}