(9)设计模式:State

来源:互联网 发布:javascript调用数据库 编辑:程序博客网 时间:2024/05/23 00:34

设计模式:State

package com.bjsxt.dp.state;import java.util.ArrayList;import java.util.List;public class Boy {private String name;public String getName() {return name;}public void setName(String name) {this.name = name;}public void pursue(MM mm) {}public void doSomeThing() {}}


package com.bjsxt.dp.state;public class MM {private String name;private MMState state = new MMHappyState();public String getName() {return name;}public void setName(String name) {this.name = name;}public void smile() {state.smile();}public void cry() {state.cry();}public void say() {state.say();}}

package com.bjsxt.dp.state;public abstract class MMState {public abstract void smile();public abstract void cry();public abstract void say();}

package com.bjsxt.dp.state;public class MMHappyState extends MMState{@Overridepublic void cry() {//happy}@Overridepublic void say() {//hou mummy}@Overridepublic void smile() {//:)}}


package com.bjsxt.dp.state;public class MMUnHappyState extends MMState{@Overridepublic void cry() {//unhappy}@Overridepublic void say() {//hou papa}@Overridepublic void smile() {//:(}}




0 0
原创粉丝点击