Bonjour à tous.
Je débute en Java. Je suis en train d'essayer de comprendre le concept d'héritage.
J'ai essayé de faire un petit programme, mais j'ai des problèmes à la compilation que je n'arrive pas à résoudre. Je code sous Windows sous Eclipse.
Les erreurs sont de ce type : Constructor call must be the first statement in a constructor
Voici le code :
public class Cercle {
public static float pi = 3.1416f;
protected float rayon;
public float Affiche(){ return this.rayon; }
public Cercle(float rayon) { this.rayon = rayon; }
public Cercle(){ this.rayon=1;}
public float surface() { return rayon * rayon * pi; }
}
public class SousCercle extends Cercle{
private float sousRayon;
public void SousCercle(){
super(2);
this.sousRayon=1;
}
public void SousCercle(float rayon){
super(rayon);
this.sousRayon=1;
}
public void SousCercle(float rayon, float sousRayon){
super(rayon);
if(super.rayon>sousRayon){
this.sousRayon=sousRayon;}
else
{
this.sousRayon=0;
}
}
public float SousSurface(){ return super.pi*super.pi*sousRayon;}
public float Affiche(){
return sousRayon;
}
}
Je vous remerci à tous pour votre aide.
Julien



tu met le m
merci de répondre
Puis je fais m.quiSuisJe() pour executer sa méthode. Si j'avais fait quiSuisJe() sans le m. ça n'aurait pas eu de sens, on ne peut pas appeller de méthode d'un objet alors qu'on a instancié aucun objet, car cette méthode peut faire référence à des variables dont les valeurs seront propres à l'objet en question.
Par exemple si j'ai deux objets m et n de type Pediatre, il n'est pas dit que la variable "age" aura la même valeur pour les deux. Deux pédiatre peuvent ne pas avoir le même âge.
Tu vois ce que je veux dire?
Je peux te faire un exemple si tu veux.
merci