广州北大青鸟计算机职业培训学校
互联网技术培训、软件技术培训、大数据培训、云计算培训、数据分析培训信息网
当前位置:网站首页 > 软件教程 > Java技术 > 正文

惠州什么是Java命令模式?_北大青鸟IT计算机学校

作者:邓华发布时间:2021-03-30分类:Java技术浏览:821


导读:最近惠州北大青鸟很多学员都在问这个问题,什么是Java命令模式?那么下面惠州北大青鸟学术部老师给大家解答一下这个问题。

最近惠州北大青鸟很多学员都在问这个问题,什么是Java命令模式?那么下面惠州北大青鸟学术部老师给大家解答一下这个问题。

命令模式是数据驱动设计模式它是行为模式之一。

请求被作为命令的对象包装传递给invoker对象。

Invoker对象将命令传递到相应的对象并且该对象执行该命令。

例子

import java.util.ArrayList;import java.util.List;interface Command {  void execute();
}class MouseCursor {  private int x = 10;  private int y = 10;  public void move() {
   System.out.println("Old Position:"+x +":"+y);
   x++;
   y++;
   System.out.println("New Position:"+x +":"+y);
   
 }  public void reset() {
   System.out.println("reset");
   x = 10;
   y = 10;
 }
}class MoveCursor implements Command {  private MouseCursor abcStock;  public MoveCursor(MouseCursor abcStock) {
   this.abcStock = abcStock;
 }  public void execute() {
   abcStock.move();
 }
}class ResetCursor implements Command {  private MouseCursor abcStock;  public ResetCursor(MouseCursor abcStock) {
   this.abcStock = abcStock;
 }  public void execute() {
   abcStock.reset();
 }
}class MouseCommands {  private List<Command> orderList = new ArrayList<Command>();  public void takeOrder(Command order) {
   orderList.add(order);
 }  public void placeOrders() {    for (Command order : orderList) {
     order.execute();
   }
   orderList.clear();
 }
}public class Main {  public static void main(String[] args) {
   MouseCursor cursor = new MouseCursor();

   MoveCursor moveCursor = new MoveCursor(cursor);
   ResetCursor resetCursor = new ResetCursor(cursor);

   MouseCommands commands= new MouseCommands();
   commands.takeOrder(moveCursor);
   commands.takeOrder(resetCursor);

   commands.placeOrders();
 }
}

上面的代码生成以下结果。

Old Position:10:10

New Position:11:11

reset

想了解更多关于Java的资讯,可以来惠州北大青鸟新方舟校区了解一下。

java8.png

Java

标签:惠州计算机JAVA软件开发惠州计算机Java软件开发惠州计算机JAVA培训惠州计算机JAVA软件开发学校惠州计算机Java软件开发培训JAVAJava软件开发北大青鸟IT计算机学校北大青鸟IT软件学校北大青鸟IT学校


Java技术排行
标签列表
网站分类
文章归档
最近发表