Version sans JavaScript, en lecture seule : les ateliers, les quiz et l’exécution du code n’y sont pas. Version complète · Catalogue · Se connecter
Séquence
Redéfinir toString()
Socle
Ajoutez toString() à Personne (elle doit renvoyer "Jean Dupont (18 ans)") et redéfinissez-le dans Etudiant pour y ajouter le numéro : "Jean Dupont (18 ans) - 3iL2025". Vérifiez ensuite que System.out.println(personne) affiche directement le bon texte.
Ici, un atelier : on y écrit et on y exécute du code. Il demande JavaScript.
Code de départ
Personne.java
public class Personne {
private String nom;
private String prenom;
private int age;
public Personne(String nom, String prenom, int age) {
this.nom = nom;
this.prenom = prenom;
this.age = age;
}
public String getNom() {
return nom;
}
public String getPrenom() {
return prenom;
}
public int getAge() {
return age;
}
// TODO : @Override public String toString() -> "Jean Dupont (18 ans)"
}
Etudiant.java
public class Etudiant extends Personne {
private String numEtudiant;
public Etudiant(String nom, String prenom, int age, String numEtudiant) {
super(nom, prenom, age);
this.numEtudiant = numEtudiant;
}
public String getNumEtudiant() {
return numEtudiant;
}
// TODO : @Override public String toString() avec super.toString() + " - " + numEtudiant
}
Exercices.java
public class Exercices {
public static void main(String[] args) {
System.out.println(new Personne("Dupont", "Jean", 18));
System.out.println(new Etudiant("Dupont", "Jean", 18, "3iL2025"));
}
}
Le socle se valide dans l’atelier, qui demande JavaScript.
Indice 1
toString() est appelée automatiquement dès qu’un objet est concaténé ou affiché. Dans Etudiant, réutilisez le travail de la mère avec super.toString() au lieu de tout réécrire. L’annotation @Override demande au compilateur de vérifier que vous redéfinissez bien une méthode existante.