Comment écrire le constructeur d'une sous-classe en initialisant les champs hérités via super() ?
super(args) comme première instruction du constructeur, puis en initialisant les champs supplémentaires de la sous-classeSavoir écrire le constructeur d'une sous-classe qui initialise correctement les champs hérités via super() et ses propres champs ensuite.
Savoir écrire le constructeur d'une sous-classe qui initialise correctement les champs hérités via super() et ses propres champs ensuite.
Dans un constructeur de sous-classe, super(args) doit être la toute première instruction : elle appelle le constructeur de la super-classe pour initialiser les champs hérités.
super(args_hérités) en toute première instruction du constructeur.Écrire le constructeur de Voiture extends Vehicule, où Vehicule(String i, int a) existe, et Voiture ajoute int nombrePlaces.
Paramètres : i et a pour Vehicule (hérités), n pour Voiture (propre).
class Vehicule {
String immatriculation;
int anneeCirculation;
Vehicule(String i, int a) {
immatriculation = i;
anneeCirculation = a;
}
}
super(args_hérités) en toute première instruction du constructeur.Appeler super(i, a) en première instruction.
class Voiture extends Vehicule {
int nombrePlaces;
Voiture(String i, int a, int n) {
super(i, a); // doit être en premier
nombrePlaces = n;
}
}
Tester le constructeur.
Voiture v = new Voiture("AB-123-CD", 2020, 5);
System.out.println(v.immatriculation); // AB-123-CD
System.out.println(v.nombrePlaces); // 5
Le constructeur appelle super(i, a) puis initialise nombrePlaces.
Écrire le constructeur de Chien extends Animal, où Animal(String nom, int age) existe, et Chien ajoute String race.
Écrire le constructeur d'Electrique extends Voiture, qui ajoute int autonomie (Voiture a déjà un constructeur Voiture(String, int, int)).
Écrire le constructeur de CompteCourant extends Compte où Compte(String titulaire, double solde) existe et CompteCourant ajoute double decouvertAutorise.
Crée ton compte gratuit pour accéder à la fiche et aux exercices