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
Encapsulation : getters et setters
Socle
Rendez les trois attributs de Personne privés, puis ajoutez les accesseurs getNom(), getPrenom(), getAge() et les mutateurs setNom(String), setPrenom(String), setAge(int). Le setAge doit refuser un âge négatif (il laisse alors l’âge inchangé).
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 {
// TODO : passer ces attributs en private
String nom;
String prenom;
int age;
public Personne(String nom, String prenom, int age) {
this.nom = nom;
this.prenom = prenom;
this.age = age;
}
// TODO : getNom, getPrenom, getAge
// TODO : setNom, setPrenom, setAge (qui refuse un age negatif)
public void afficherDetails() {
System.out.println(prenom + " " + nom + ", " + age + " ans");
}
}
Exercices.java
public class Exercices {
public static void main(String[] args) {
// Une fois les getters et setters ecrits, remplacez ces lignes par :
// Personne p = new Personne("Dupont", "Jean", 18);
// p.setAge(-5);
// System.out.println("age apres setAge(-5) : " + p.getAge());
System.out.println("Completez Personne.java, puis lancez Verifier.");
}
}
Le socle se valide dans l’atelier, qui demande JavaScript.
Indice 1
private interdit l’accès depuis l’extérieur de la classe : c’est la classe elle-même qui garantit que ses données restent valides. C’est tout l’intérêt du filtre dans setAge.