Bonjour,
le code de la classe mere:

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
 
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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é