Question sur les classes abstraites
Bonjour,
le code de la classe mere:
Code:
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
|
abstract class Animal {
/**
* La couleur de l'animal
*/
protected String couleur;
/**
* Le poids
*/
protected int poids;
/**
* La méthode manger
*/
protected void manger(){
System.out.println("Je mange de la viande");
}
/**
* La méthode boire
*/
protected void boire(){
System.out.println("Je bois de l'eau !");
}
/**
* La méthode de déplacement
*/
abstract void deplacement();
/**
* La méthode de cri
*/
abstract void crier();
public String toString(){
String str = "Je suis un objet de la " + this.getClass() + ", je suis " + this.couleur + ", je pèse " + this.poids;
return str;
}
} |
le code de la sous-classe :
Code:
1 2 3 4 5 6 7
| public abstract class Felin extends Animal {
void deplacement() {
System.out.println("Je me déplace seul !");
}
} |
le code de la fille :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| public class Lion extends Felin {
public Lion(){
}
public Lion(String couleur, int poids){
this.couleur = couleur;
this.poids = poids;
}
void crier() {
System.out.println("Je rugis dans la savane !");
}
} |
1- Pourquoi la classe Lion n'est pas déclaré ABSTRAITE vu qu'elle contient une méthode ABSTRAITE "Crier"
A+
Merci les Gas de m'avoir aidé :oops: