[java] Problème méthodes

Résolu
Bonjour, je débute en java, et j'ai un probème sur 'difference':
il me dit que personne n'est pas un type.


public class Personne {
	int anneeNaissance;
	String nom; 
	
//constructor
public void personne(int birthyear, String name){

	nom=name;
	anneeNaissance=birthyear;	

}

public int calculAge(){
	
	int year= 2008;
	int age = (year-anneeNaissance);
	return (age);
}

public int difference(){
	personne p1 = new personne(1986,"Simon");
	personne p2 = new personne(1987,"Timon");
	

	int dif= Math.abs(p1.calculAge()-p2.calculAge());
	return dif;
	
}




} //fin class


Merci de votre aide !
Configuration: Windows XP
Firefox 3.0.5

6 réponses

  1. Merci pour vos réponses !
    0
    1. Tu dois les distinguer comme les autres méthodes :

      public int getAnneeNaissance()
      {
        return this.anneeNaissance;
      }
      
      public String getNom()
      {
        return this.nom;
      }
      
      public void setAnneeNaissance(int anneeNaissance)
      {
        this.anneeNaissance = anneeNaissance;
      }
      
      public void setNom(String nom)
      {
        this.nom = nom;
      }
      0
      1. merci ca marche impec. Donc il faut que le nom du constructeur et de la classe soient les même ? (avec un majuscule c'est ça?)

        Autre petite question: dois je mettre les get & set dans le constructeur ou je peux les mettre ou je veux ?

        merci !
        0
        1. dans l'en tete de ton constructeur il manque aussi la majuscule et il n'y a pas de type de retour dans un constructeur enleve le void dans l'en tete
          0
          1. ok, c'est fait

            public int difference(){
            	Personne p1 = new Personne(1986,"Simon");
            	Personne p2 = new Personne(1987,"Timon");
            	
            


            mais il me dit que je n'ai pas définie Personne ....
            0
            1. Tu as oublié les majuscules à "personne" quand tu crée tes deux Personne dans difference().

              Personne p1 = new Personne(1986,"Simon");
              Personne p2 = new Personne(1987,"Timon");
              0