FAQ TP3/4 d'INFO301 - partie 2

par Tom
le 08/12/2019

Sommaire

rappel partie 1

Normalement là vous devriez avoir les classes et les attributs suivants :

  • Objet : nom (chaîne), modification de vie (nombre)
  • Graal : hérite de Objet, poids (nombre)
  • Obstacle : hérite de Objet, pas d'attributs supplémentaires
  • Chevalier : nom (chaîne), vie (nombre), sac (liste)
  • QuatreCoins : monde (tableau 2D d'Objets)

recommandations

  • utiliser un Objet[][] et pas un char[][]
  • mettre un attribut caractereAffichage dans la classe Objet
  • créer une classe Position avec des attributs x et y

les classes devraient avoir cette tête :

public class Chevalier {
    String nom;
    int vie;
    ArrayList<Objet> sac; // NOTE: Il est juste d'utiliser ArrayList<Graal>. Ça changera pas beaucoup le code.

    ...
} 

// le 'abstract' est facultatif mais c'est plus propre
public abstract class Objet {
    String nom;
    int modifVie;
    char caractereAff;

    ...
}

public class Obstacle extends Objet {
    ...
}

public class Graal extends Objet {
    int poids;

    ...
}

public class QuatreCoins {
    Objet[][] carte;
}

public class Position {
    int x;
    int y;
}