Command

1 Sinopsis

Encapsula comandos en objetos de tal manera que se puede controlar su selecc9ion y secuencia de ejecucion

2 Contexto

3 Solucion

El diagrama UML es el siguiente:

4 Consecuencias

5 Ejemplo

El Comando abstracto es el siguiente


public interface Comando  {
    ....
}
See the complete code for Comando here.
public void ejecutar();

El manejador de comandos es


public class ManejadorComando  {
    ....
}
See the complete code for ManejadorComando here.
private Comando [] comandos = new Comando[100];
private int ultimo = 0;
public void agregar(Comando cmd){ comandos[ultimo] = cmd; ultimo++;}
public void trabajar(){ ;}

Y los comandos son


public class Comando1 implements Comando  {
    ....
}
See the complete code for Comando1 here.
        
public void ejecutar(){ System.out.println("Hola");}

public class Comando2 implements Comando  {
    ....
}
See the complete code for Comando2 here.
        
public void ejecutar(){ System.out.println("Mundo");}

El cliente


public class ClienteComando  {
    ....
}
See the complete code for ClienteComando here.
  public static void main(String [] args) {
     ManejadorComando mgr = new ManejadorComando();
     mgr.agregar(new Comando1());
     mgr.agregar(new Comando2());
     mgr.ejecutar();
  }