当前位置: 首页 > news >正文

重庆网站seo多少钱上海发布官网app下载

重庆网站seo多少钱,上海发布官网app下载,全屏网站,移动网站开发试验报告概念#xff1a; 命令模式是一种行为设计模式#xff0c;它将请求封装成一个对象#xff0c;从而允许您将不同的请求参数化、队列化#xff0c;并且能够在不同的时间点执行。通过引入命令对象#xff08;Command#xff09;来解耦发送者#xff08;Invoker#xff09;…概念 命令模式是一种行为设计模式它将请求封装成一个对象从而允许您将不同的请求参数化、队列化并且能够在不同的时间点执行。通过引入命令对象Command来解耦发送者Invoker和接收者Receiver使得发送者无需知道具体的接收者或操作细节。命令对象封装了一系列操作并提供了一个统一的方法如execute()以便调用这些操作。 特点 解耦性命令模式将发送者与接收者之间解耦使得它们可以独立演化。可扩展性可以方便地添加新的命令类和接收类而无需修改现有代码。可撤销/重做由于每个命令都包含了执行和撤销操作因此可以轻松地实现撤销、重做等功能。容易组合多个简单命令可以组合成复杂命令在需要时进行灵活组合。 优点 降低系统的耦合度。发送者与接收者之间不存在直接关联关系。更好地支持撤销、重做等功能。每个具体命令断言了相关操作及其撤销操作。更好地支持日志和事务。可以记录命令的执行过程以及在需要时进行回滚。 缺点 可能会导致类爆炸。每个具体命令都需要一个对应的接收者类。命令模式增加了系统的复杂性因为它引入了额外的抽象层次。 适用场景 需要将请求参数化、队列滑并希望能够在不同时间执行。需要支持撤销、重做等功能。需要实现日志记录、事务管理等功能。 实现方式 定义一个抽象命令Command接口或抽象类其中包含一个execute()方法用于执行命令。创建具体命令类实现抽象命令接口或继承抽象命令类并在其中编写具体操作逻辑及其撤销逻辑。定义接收者Receiver类该类包含真正执行操作的方法。创建调用者Invoker对象在其中维护一系列命令对象并通过调用execute()方法来触发相应的操作。 实现代码 import java.util.ArrayList; import java.util.List;// 抽象命令接口 interface Command {void execute(); }// 具体命令类1 class ConcreteCommand1 implements Command {private Receiver receiver;public ConcreteCommand1(Receiver receiver) {this.receiver receiver;}Overridepublic void execute() {receiver.action1();} }// 具体命令类2 class ConcreteCommand2 implements Command {private Receiver receiver;public ConcreteCommand2(Receiver receiver) {this.receiver receiver;}Overridepublic void execute() {receiver.action2();} }// 接收者类 class Receiver {public void action1() {System.out.println(执行操作1);}public void action2() {System.out.println(执行操作2);} }// 调用者类/发送者类/Invoker类 class Invoker {private ListCommand commands new ArrayList();// 添加命令到队列中public void addCommand(Command command) {commands.add(command);}// 执行所有的命令public void executeCommands() {for (Command command : commands) {command.execute();}commands.clear(); // 清空已执行的命令列表可选操作。} }public class Main {public static void main(String[] args) {// 创建接收者对象Receiver receiver new Receiver();// 创建具体命令对象并指定接收者Command command1 new ConcreteCommand1(receiver);Command command2 new ConcreteCommand2(receiver);// 创建调用者对象并添加命令到队列中Invoker invoker new Invoker();invoker.addCommand(command1);invoker.addCommand(command2);// 执行所有命令invoker.executeCommands();}}在上述代码中我们定义了一个抽象的Command接口其中包含了一个execute()方法。然后创建了两个具体的命令类ConcreteCommand1和ConcreteCommand2它们实现了Command接口并重写了execute()方法。这些具体的命令类将调用接收者类中的不同操作。 在接收者类中我们定义了两个操作action1()和action2()。 最后我们创建了一个调用者类/发送者类/Invoker类。它维护一个命令队列并提供添加命令和执行所有命令的方法。当调用执行所有命令的方法时它会依次执行每个命令。 通过使用命令模式可以将请求发送方与接收方解耦并且可以轻松地添加新的具体命令而无需修改现有代码。此外由于每个具体的命令都是独立封装的对象因此可以轻松地进行参数化配置和传递。
http://www.hkea.cn/news/14566142/

相关文章:

  • 网站维护托管深圳移动网站建设公司价格
  • dw建设的网站上传connect wordpress 主题
  • 公司网站建设工作通知自己在线制作logo免费 生成器
  • 申请自助网站wordpress title修改
  • 怎么给网站做seo优化新手如何优化网站排名
  • 建网站用哪个好做网站一年赚多少钱
  • 网站建设系统怎么样女性健康网站源码
  • 网站建设企业网站宿迁商城网站建设
  • 哪些公司做DZ网站维护做悬浮导航的网站
  • 商务网站建设详细步骤洋气的文化传媒公司名字
  • jsp网站服务器如何做防护电子商务网站建设和推广论文
  • 哲学专业特色建设网站注册公司网站源码
  • 做交易网站存在什么风险网站搜索引擎优化报告
  • 贵州省建设厅考证官方网站盈润企业网站管理系统
  • 网站运营外包公司网站做百度推广吗
  • 门窗企业网站建设网站建设彩铃语
  • 网站建设衤金手指花总十五唐山公司做网站
  • 栾城区城乡建设局网站关键词排名优化提升培训
  • 服装电子商务网站建设3000字wordpress商城主题模板
  • 建设部职业资格注册中心网站网站建设 铭阳传媒
  • 案例应聘网络营销做网站推广国外外贸网站
  • 做自媒体一般都注册几个网站大都会app用不了
  • 零食店网站建设计划书成都网站优化多少钱
  • 南京高端网站建设公司网站开发云南
  • 电商网站开发平台用什么人开发书店网站规划与建设
  • 怎么向搜索引擎提交网站广州公司网站建设
  • 开发网站的费用属于什么费用建设一个旅游网站必备的
  • 有没有可以在线做化学实验的网站怎么通过淘宝优惠券做网站赚钱
  • php企业网站开发pdf对网站做数据统计的目的是什么
  • 创意合肥网站建设wordpress免费主机