Dans les cas étudiés précédemment, les champs étaient initialisés à des valeurs constantes. Il arrive cependant
qu'il soit impossible de décider, lors de la conception de la classe, de valeur initiale des champs. Cela arrive
lorsque la valeur initiale dépend du contexte ou d'un calcul. Dans ce cas, on utilise un
constructeur pour initialiser les champs à des valeurs dynamiques, c'est-à-dire
déterminées lorsque l'objet est construit.
Syntaxiquement, un constructeur ressemble à une méthode, on le distingue cependant pour deux raisons.
La première est qu'il s'appelle nécessairement comme la classe (avec la même casse, minuscules/majuscules) alors
que le nom des méthodes est libre.
La deuxième est qu'il n'a pas de type de retour alors que les méthodes ont nécessairement un type de retour,
ou void pour indiquer qu'elle ne renvoie rien.