"chenilles animées" Une ou plusieurs chenilles se déplacent dans une fenêtre Lorsque leur tête atteint l'un des bords de l'écran elles changent de direction
démo
Quelles sont les classes nécessaire à l'écriture de cette application ?
Héritage : Rappels (0,0) X Anneau int x; r.x,y attributs int y; int r; Anneau(int x, int y, int r) constructeurs Anneau(int x, int y)
r. cap int getX()
Y x,y méthodes int getY() void placerA(int x, int y) void dessiner(Graphics g) La tête est un cas particulier d’Anneau. Une tête est un (is a) Anneau La classe Tête étends (hérite) de la classe Anneau Tête attribut supplémentaire double cap; Tête(int x, int y, int r, double c) constructeurs Tête(int x, int y) boolean capOK(int xMax, int yMax) méthodes supplémentaires void modifierCap(double deltaCap) void deplacerSelonCap()
redéfinition de la méthode void dessiner(Graphics g)
Composition / Héritage Une chenille a un ou plusieurs anneaux. Une chenille Anneau connaît 1..* Chenille un Dessin int x; corps Chenille(int nbA, Dessin d) int y; int r; void deplacer() void dessiner(Graphics g) Anneau(int x, int y, int r) void setDessin(Dessin d) Anneau(int x, int y) dess int getX() Une chenille int getY() a une tête. Dessin void placerA(int x, int y) int getLargeur() Relation de void dessiner(Graphics g) int getHauteur() Composition ...
1 tête
Une chenille est composée d’anneaux
Tête et d’une tête et se déplace dans une zone dessin. double cap; Tête(int x, int y, int r, double c) La classe Chenille utilise les classes Tête(int x, int y) Tête et Anneau et Dessin. void dessiner(Graphics g) attributs (variables d'instance) : boolean capOK(int xMax, int yMax) void modifierCap(double deltaCap) - tête un objet de classe Tête void deplacerSelonCap() - corps un objet tableau d’Anneau. - dess un objet de classe Dessin