Outils pour utilisateurs

Outils du site


helloworld:design_pattern:command:java
public interface IBehaviour {
  public int moveCommand();
}
 
public class AgressiveBehaviour implements IBehaviour{
  public int moveCommand()
  {
    System.out.println("\tAgressive Behaviour");
    return 1;
  }
}
 
public class DefensiveBehaviour implements IBehaviour{
  public int moveCommand()
  {
    System.out.println("\tDefensive Behaviour");
    return -1;
  }
}
 
public class NormalBehaviour implements IBehaviour{
  public int moveCommand()
  {
    System.out.println("\tNormal Behaviour");
    return 0;
  }
}
 
public class Robot {
  IBehaviour behaviour;
 
  public void setBehaviour(IBehaviour behaviour)
  {
    this.behaviour = behaviour;
  }
 
  public IBehaviour getBehaviour()
  {
    return behaviour;
  }
 
  public void move()
  {
    System.out.println("Based on current position" +
      "the behaviour object decide the next move:");
    int command = behaviour.moveCommand();
    // ... send the command to mechanisms
    System.out.println("\tThe result returned by behaviour object " +
      "is sent to the movement mechanisms " + 
      "for the robot.");
  }
}
helloworld/design_pattern/command/java.txt · Dernière modification : 2020/03/02 22:00 de root