<java>pb avec ce prg String

domxaline Messages postés 204 Statut Membre -  
 tchecko225 -
Bonjour,
package javaapplication1;
public class Tuna
{
    private int month;
    private int day;
    private int year;

    public tuna(int m,int d,int y)
    {
        month=m;
        day=d;
        year=y;
        System.out.printf("The constructor for this is%s\n",this);
    }
    public String toString()
    {
        return String.format("%d/%d%d%d",month,day,year);

    }


}
package javaapplication1;
public class Apples
{
 public static void main(String[]args)
 {
     Tuna TunaObject=new Tuna("4,5,6");
     
 }
}

en compilant ce prg j'ai erreur suivantes
Exception in thread "main" java.lang.RuntimeException: Uncompilable source code - cannot find symbol
symbol: constructor Tuna(java.lang.String)
location: class javaapplication1.Tuna
at javaapplication1.Apples.main(Apples.java:7)
Java Result: 1

les lignes suivantes sont soulignés
public tuna(int m,int d,int y)
Tuna TunaObject=new Tuna("4,5,6");

aidez moi s'il vous plaît

5 réponses

  1. xav3601 Messages postés 3390 Statut Membre 312
     
    Salut!

    Alors première erreur, le constructeur doit avoir le même nom que la calsse, à savoir:

    public Tuna(int m,int d,int y)
    {
    month=m;
    day=d;
    year=y;
    System.out.printf("The constructor for this is%s\n",this);
    }

    Deuxième erreur, dans ta deuxième classe tu doit importer la classe Tuna afin de pouvoir instancier un objet de type Tuna:

    package javaapplication1;

    import Tuna; // si les deux classes sont dans le même dossier, sinon faut mettre le chemin d'accès.

    public class Apples
    {
    public static void main(String[]args)
    {
    Tuna TunaObject=new Tuna("4,5,6");

    }
    }

    A+
    1
  2. domxaline
     
    'ai corrigé les erreurs
    ackage javaapplication1;
    public class Tuna
    {
        private int month;
        private int day;
        private int year;
     
        public Tuna(int m,int d, int y)
        {
            month=m;
            day=d;
            year=y;
            System.out.printf("The constructor for this is%s\n",this);
        }
        public String toString()
        {
            return String.format("%d/%d%d%d",month,day,year);
     
        }
    }
     
    package javaapplication1;
     
    public class Apples
    {
     public static void main(String[]args)
     {
         Tuna TunaObject=new Tuna(4,5,6);
         
     }
    }
    
    

    en compilant j'ai erreurs suivantes:
    Exception in thread "main" java.util.MissingFormatArgumentException: Format specifier 'd'
    at java.util.Formatter.format(Formatter.java:2431)
    at java.util.Formatter.format(Formatter.java:2366)
    at java.lang.String.format(String.java:2770)
    at javaapplication1.Tuna.toString(Tuna.java:18)
    at java.util.Formatter$FormatSpecifier.printString(Formatter.java:2793)
    at java.util.Formatter$FormatSpecifier.print(Formatter.java:2676)
    at java.util.Formatter.format(Formatter.java:2432)
    at java.io.PrintStream.format(PrintStream.java:920)
    at java.io.PrintStream.printf(PrintStream.java:821)
    at javaapplication1.Tuna.<init>(Tuna.java:14)
    at javaapplication1.Apples.main(Apples.java:8)

    et dans la ligne
    Tuna TunaObject=new Tuna(4,5,6);

    "TunaObject" est souligné
    0
  3. xav3601 Messages postés 3390 Statut Membre 312
     
    Alors ton erreur provient de cet ligne:

    String.format("%d/%d%d%d",month,day,year);
    Je sais pas trop ce que tu veus faire avec?

    On corrige d'abord cette erreur on verra après pour le TunaObject
    0
  4. domxaline
     
    merci beaucoup
    j'ai corrigé mon erreur c'est donc ça
    0
    1. tchecko225
       
      coment a tu corigé ton ereur car jè c mm problème mè moi cè pr lè détecteurs d'intrusion sur 1 réso intranet
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. xav3601 Messages postés 3390 Statut Membre 312
     
    Tu n'as plus d'autre erreur du coup?
    Ca fais disparaître le trait rouge sous TunaObject?

    Parfait alors :-)
    0