Bonjour,

Peut-on redéfinir les champs par défaut de la classe-mère? Ma terminologie est peut-être incorrecte, voici un exemple; une classe représente les vertébrés avec ses caractéristiques très générales, une autre les mammifères.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
public class test {
  public static void main (String argv[]) {
    Mammal chien = new Mammal("chien");
    System.out.println(chien);
  }
}
 
class Vertebrate {
  private String name;
  private boolean skeletton   = true;
  private String skeletton_type    = "osseux ou cartilagineux";
  private String reproduction = "indéfini";
  private String skin         = "indéfini";
  private String heat         = "indéfinie";
 
  public void setName (String name) {
    this.name = name;
  }
 
  public String toString () {
    String characteristics = new String();
    characteristics += "Nom         : " + name         + "\n";
    String squel = skeletton? "oui": "non";
    characteristics += "Squelette   : " + squel     + "\n";
    characteristics += "type        : " + skeletton_type     + "\n";
    characteristics += "Reproduction: " + reproduction + "\n";
    characteristics += "Tégument    : " + skin         + "\n";
    characteristics += "Température : " + heat               ;
    return characteristics;
  }
}
 
class Mammal extends Vertebrate {
  private String reproduction = "vivipare";
  private String skeletton_type    = "osseux";
  private String skin         = "pelage";
  private String heat         = "sang chaud";
 
  public Mammal (String name) {
    setName(name);
  }
}
Avec un appel à toString() sur un type Mammal, j'espérais obtenir les champs définis dans la classe Vertebrate et de Mammal selon qu'ils soient redéfinis ou non, mais non, j'obtiens tous ceux de la classe-mère.

Comment adapter ce code ?



Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
$ java test
Nom         : chien
Squelette   : oui
type        : osseux ou cartilagineux
Reproduction: indéfini
Tégument    : indéfini
Température : indéfinie

Merci d'avance,

Gauthier