设计模式 命令,java设计模式菜鸟教程

  设计模式 命令,java设计模式菜鸟教程

  00-1010实现个人理解入门:将多个命令分离在一个类中,每个类放一个命令,实现解耦。一个类只对应一个功能,在使用命令时,另一个类统一管理所有命令。

  缺点:如果函数太多,就会创建太多的类。

  命令模式是一种数据驱动的设计模式,属于行为型模式.请求以命令的形式包装在对象中,并传递给调优对象。该对象寻找能够处理该命令的合适对象,并将该命令发送给相应的对象,该对象执行该命令。

  00-1010意图:将每一个请求封装成一个对象,这样你就可以对不同请求的客户进行参数化。

  主要解决方案:在软件系统中,通常是请求者和实现者之间的紧耦合关系,但在某些情况下,比如需要记录、取消或重做、处理事务,这种方法不适合抗变更的紧耦合设计。

  何时进行:在某些情况下,如“记录、撤消/重做、事务”等。这种方法不适合抵抗变化的紧耦合。在这种情况下,如何将“作为请求者”与“作为实施者”分离开来?通过将组抽象为对象,可以实现实现者之间的松散耦合。

  如何解决这个问题:顺序是:派遣方指挥方接收方。

  关键代码:分离类中的命令,并为它们创建类。这些命令类具有相同的父类。

  优势:

  耦合度降低。新命令可以很容易地添加到系统中。缺点:制作命令模式可能会导致某些系统的特定命令类过多。

  制作场景:所有被认为是命令的地方都可以制作命令模式,比如:1。1中的每个按钮。GUI是一个命令。2.模拟CMD。

  注意:系统需要用命令进行撤销操作和重做操作,也可以考虑使用命令模式。

  

目录

我们首先创建Order作为命令,然后创建股票类作为请求。实体类BuyStock和SellStock实现订单连接,并将处理实际的命令处理。创建一个类代理作为调优对象,它接受订单并可以下订单。Broker制定命令模式,并根据命令的类型确定哪个对象执行哪个命令。CommandPatternDemo类使Broker类演示命令模式。

 

  实施步骤

  1.创建一个Java项目。

  2.创建库存请求类库存。

  包装src.com。设计模式。命令模式;/* *股票类别* */公共类别股票{ privatestringname私有int数量;公共股票(String name,int quantity){ this . name=name;this.quantity=数量;} public void buy(){ system . out . println(股票购买成功名称,股数:数量);} public void sell(){ system . out . println(股票出售成功名称,股数:数量);}}3.创建一个命令,后跟Order.

  包装src.com。设计模式。命令模式;公共接口顺序{ void execute();}4.创建一个实现订单连接的实体类BuyStock。

  包装src.com。设计模式。命令模式;类购买股票实现订单{//依赖于股票对象私有股票的股票;public BuyStock(股票股票){ this.stock=股票;} @ override public void execute(){//stock . buy(),买入目标股票的业务操作;}}5.创建实现订单连接的实体类SellStock。

  包装src.com。设计模式。命令模式;公共类出售股票实现订单{私有股票股票;public SellStock(股票股票){ this.stock=股票;} @覆盖public void execute(){ stock . sell();}}6.创建一个命令调整类代理。

  包装src.com .设计模式.命令模式;导入Java。util。ArrayList导入Java。util。列表;/** 股票经纪人类* */public class Broker { private list order list=new ArrayList();//1.接受订单public void take Order(订单订单){订单列表。添加(订单);} //2.执行订单公共void place orders(){ order list。foreach(fun-{ fun。执行();});}}7.创建CommandPatternDemo类,然后使Broker类来接受并执命令。

  包装src.com .设计模式.命令模式;public class CommandPatternDemo { public static void main(String[]args){ Stock Stock=new Stock( 002607 ,100);买入股票买入股票=新买入股票(股票);卖出股票新的卖出股票(股票);经纪人经纪人=新经纪人();经纪人。接单(买股票);经纪人。接单(卖股票);经纪人。下单();}}8.执程序,输出结果。

  到此这篇关于爪哇超详细讲解设计模式中的命令模式的文章就介绍到这了,更多相关爪哇命令模式内容请搜索盛行信息技术以前的文章或继续浏览下面的相关文章希望大家以后多多支持盛行它!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: