Constructor is undefined

Résolu
Bonjour,

Je suis sous eclipse luna, et j'ai un problème avec un bout de code qui se trouve dans ma classe execution :
Deix DeixCourant1 = new Deix (Katricule, vef, Snom,  Knom, F_Adresse);

Eclispe me dit que
constructor Deix (int,int,String,String,String) is undefined.


Voici mes importation:
 import java.util.HashMap;
//import java.util.Iterator;
import java.util.Map;
import java.util.Scanner;
//import java.util.Random;
import java.util.HashSet;
import java.util.Iterator;

et la classe Deix:
 public  Deix ( )
 {
  this.Reference_Deix =0  ;
      this.Nom_Deix ="" ;
      this.Prenom = "" ;
      this.Adresse =""  ;
 }
 public  Deix(int V_reference_Client, String V_Nom_Deix, String V_Prenom, String V_Adresse )
 {
  this.Reference_Deix =V_reference_Deix  ;
      this.Nom_Deix =V_Nom_Deix ;
      this.Prenom = V_Prenom ;
      this.Adresse =V_Adresse  ;
   
     
 }
//Retourne le nom du Deix
 public String getNom() {
 return Nom_Client;
 }
 
 //mise à jour du nom du Deix
 public void setNom(String Knom) {
 Nom_Client=Knom;
 }
 
 //Retourne le prenom du Deix
 public String getPrenom() {
 return Prenom;
 }
 
 //mise à jour du prenom du Deix
 public void setPrenom(String Snom) {
  Prenom=Snom;
 }
 
 //Retourne l'adresse
 public String getAdresse() {
 return Adresse;
 }
 
 //mise à jour Adresse du Deix
 public void setAdresse(String  F_Adresse) {
  Adresse= F_Adresse;
 }
 

 
 //Retourne la reference Deix
 public int getReference() {
 return Reference_Deix;
 }
 // mise à jour reference du Deix
 public void setRef(int vef) {
  Reference_Client=vef;
 }


Merci d'avance.

1 réponse

  1. Modérateur
    Bonjour,

    Ton constructeur
    public Deix(int V_reference_Client, String V_Nom_Deix, String V_Prenom, String V_Adresse)
    prends 4 paramètres (int, String, String, String)
    Tu ne peux donc pas créer un objet Deix avec 5 paramètres (int, int, String, String, String) comme tu le fais dans
    new Deix (Katricule, vef, Snom,  Knom, F_Adresse);

    Soit tu modifies ton constructeur pour rajouter un 5è paramètre int, soit tu modifies la construction de l'objet en supprimant le paramètre int en trop.
    1. Merci de la reponse, pourrais-je avoir un exemple svp, pour que ce soit plus clair?
    2. Modérateur
      Ce devrait être l'un de ces trois cas là :

      Deix DeixCourant1 = new Deix(vef, Snom,  Knom, F_Adresse);

      Deix DeixCourant1 = new Deix(Katricule,  Snom,  Knom, F_Adresse);

      public Deix(int Katricule, int V_reference_Client, String V_Nom_Deix, String V_Prenom, String V_Adresse) {
          ...
    3. @KXMerci, le problème est résolu. J'ai utilisé le troisième choix. Dur, Dur, Java