Projet 5 : Écrire des classes
Ce projet tourne autour de l'écriture de classes et de méthodes, comment écrire une classe ? Comment utiliser une classe ? Il est important de voir la différence entre classes et objets, ces derniers étant des instances d'une classe.
Le problème
On a envie de simuler une course automobile, on va donc devoir manipuler des voitures. On a diverses informations sur la voiture : sa position, sa vitesse et son accélération. Que peut-t'on faire avec une voiture ? On peut connaitre sa position et on peut la mettre à jour.
Définir les classes
Comme d'habitude, commencez par créer un nouveau projet dans Eclipse, on le nommera Projet5
. Une fois le projet créé, on doit décider quelles sont les classes dont on va avoir besoin et les relations qui vont exister entre ces classes. On aura comme toujours une classe avec la méthode main
qui sera le point d'entrée du programme, on peut donc créer une classe Projet5
avec une méthode main
.
Ensuite, on doit pouvoir représenter la position, vitesse et accélération des voitures, on va donc créer une classe qui représente un vecteur dans le plan (on suppose que les voitures se déplacent dans un plan), la classe Vector2D
. Enfin, il nous reste une dernière classe à faire, la classe Car
qui représente une voiture.
Une fois ces trois classes créées, vous devriez les voir dans l'explorateur de package dans la partie gauche d'Eclipse. Cet onglet est très utile pour naviguer facilement parmi toutes les classes d'un projet.
On a donc deux classes à écrire : la classe Vector2D
qui représente un vecteur dans le plan et la classe Car
qui représente une voiture.
La classe Vector2D
Que retrouve-t'on dans une classe ? On a des variables d'instance, des constructeurs et des méthodes.
Variables d'instance
Commençons par les variables d'instance, il faut se poser la question, qu'est-ce-qu'un vecteur dans le plan, comment le caractériser ? Un vecteur dans le plan, c'est en fait deux coordonnées réelles, une abscisse et une ordonnée, on va donc mettre deux variables d'instance dans la classe.