简单的命令模式
来源:互联网 发布:南风知我意2朱旧番外 编辑:程序博客网 时间:2024/06/15 01:41
将命令分装成对象,传递给调用者,可以使请求调用者和请求接受者之间有效解耦!!!
package com.xul.commandmodel;import java.time.Period;/** * 命令模式 */public class Commendmodel { SuperFather obj = null; public void executeCommand(){ obj.execute(); } public SuperFather getObj() { return obj; } public void setObj(SuperFather obj) { this.obj = obj; } public static void main(String[] args) { Commendmodel commendmodel = new Commendmodel(); People pro = new People(); PeopleEatFanCommand peopleEatFanCommand = new PeopleEatFanCommand(); peopleEatFanCommand.setPeo(pro); PeopleRunCommand runCommand = new PeopleRunCommand(); runCommand.setPeo(pro); PeopleSleepCommand sleepCommand = new PeopleSleepCommand(); sleepCommand.setPeo(pro); commendmodel.setObj(peopleEatFanCommand); commendmodel.executeCommand(); commendmodel.setObj(runCommand); commendmodel.executeCommand(); commendmodel.setObj(sleepCommand); commendmodel.executeCommand(); }}/* * 超级父类 */interface SuperFather{ public void execute();}class People { public void eatFan(){ System.out.println("eatFan"); } public void sleep(){ System.out.println("sleep"); } public void run(){ System.out.println("run"); }}class PeopleEatFanCommand implements SuperFather{ People peo = null; public void setPeo(People peo) { this.peo = peo; } @Override public void execute() { peo.eatFan(); }}class PeopleSleepCommand implements SuperFather{ People peo = null; public void setPeo(People peo) { this.peo = peo; } @Override public void execute() { peo.sleep(); }}class PeopleRunCommand implements SuperFather{ People peo = null; public void setPeo(People peo) { this.peo = peo; } @Override public void execute() { peo.run(); }}
0 0
- 简单的命令模式
- 命令模式的简单实现
- 命令模式的简单使用
- 一个简单的命令模式类
- decorator,命令模式与职责链模式的简单总结
- 使用命令模式实现简单的支持撤销的计算器
- 命令模式demo-一个简单的动画回放功能
- Java简单工厂模式和命令模式
- 浅谈简单工作流设计——责任链模式配合策略与命令模式的实现
- Linux的简单命令
- Linux的简单命令
- 简单的网络命令
- 简单的SQL命令
- mqsql的简单命令
- DOS的简单命令
- 非常简单的命令
- 简单的SGE 命令
- 简单的svn命令
- Socket的轻描淡写
- HDP学习--YARN Resource Management(02)
- sql操作符like和in组合使用
- 第三十九讲项目3.1——输入一个正整数,输出它的反序数
- 数字信号处理
- 简单的命令模式
- STM32学习16
- js--基础
- shell脚本编程
- Touch事件的十几个问题
- (转)Android开发中一些命名规范
- 通过官方自带的mysqld_multi来实现mysql多实例
- 《C++ Primer》读书笔记-第九章 04 vector对象增长
- 进度条