当前位置:
凯发ag旗舰厅登录网址下载 >
编程语言
>
>内容正文
asp.net
command命令设计模式 -凯发ag旗舰厅登录网址下载
发布时间:2025/1/21
24
豆豆
凯发ag旗舰厅登录网址下载
收集整理的这篇文章主要介绍了
command命令设计模式
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
执行一步操作后,回滚或撤销
public abstract class command {public abstract void doit(); //exec runpublic abstract void undo(); } public class content {string msg = "hello everybody "; } public class copycommand extends command {content c;public copycommand(content c) {this.c = c;}@overridepublic void doit() {c.msg = c.msg c.msg;}@overridepublic void undo() {c.msg = c.msg.substring(0, c.msg.length()/2);} } public class deletecommand extends command {content c;string deleted;public deletecommand(content c) {this.c = c;}@overridepublic void doit() {deleted = c.msg.substring(0, 5);c.msg = c.msg.substring(5, c.msg.length());}@overridepublic void undo() {c.msg = deleted c.msg;} } public class insertcommand extends command {content c;string strtoinsert = "http://www.zhangxueliang.com";public insertcommand(content c) {this.c = c;}@overridepublic void doit() {c.msg = c.msg strtoinsert;}@overridepublic void undo() {c.msg = c.msg.substring(0, c.msg.length()-strtoinsert.length());} }测试
public class main {public static void main(string[] args) {content c = new content();command insertcommand = new insertcommand(c);insertcommand.doit();insertcommand.undo();command copycommand = new copycommand(c);insertcommand.doit();insertcommand.undo();command deletecommand = new deletecommand(c);deletecommand.doit();deletecommand.undo();list
总结
以上是凯发ag旗舰厅登录网址下载为你收集整理的command命令设计模式的全部内容,希望文章能够帮你解决所遇到的问题。
如果觉得凯发ag旗舰厅登录网址下载网站内容还不错,欢迎将凯发ag旗舰厅登录网址下载推荐给好友。
- 上一篇: briage桥接设计模式
- 下一篇: