Débutes avec les classes (bloqué) [Résolu]

Signaler
Messages postés
56
Date d'inscription
vendredi 21 mai 2004
Statut
Membre
Dernière intervention
7 mai 2006
-
kaloway
Messages postés
357
Date d'inscription
jeudi 24 octobre 2002
Statut
Membre
Dernière intervention
30 mars 2011
-
Salut.

Bon voilà je débutes en Java et j'ai un problème avec ma classe.

Mon fichier test me retourne sans cesse cette erreur.



"Exception in thread "main" java.lang.NoClassDefFoundError: Racine/java
"



Là mon fichier classe.



public class Mathematiques

{

//Champs

private double x=0;



//Constructeurs



public double Abs(double x)

{

return Math.abs(x);

}



public double Rac(double x)

{

return Math.sqrt(x);

}

}



/////////////////////////////////////////////////////////////////////////////////////////////////////////Et là mon fichier test.



public class Abs_

{

public static void main(String[] argv)

{

//Déclaration

Mathematiques m;

//Instanciation

m = new Mathematiques(-5);

m.Abs(-5);

System.out.println(m.Abs());

}

}



Merci de votre aide.

9 réponses

Messages postés
2835
Date d'inscription
lundi 11 août 2003
Statut
Modérateur
Dernière intervention
16 décembre 2006
10
Est-ce que tu peux mettre ton code COMPLET ?

Ton erreur n'a pas lieu d'être dansce que tu as mis, par exemple aucun
appel à la classe Racine n'est noté ici et c'est de là que vient le
prob ..



++
Messages postés
492
Date d'inscription
vendredi 30 janvier 2004
Statut
Membre
Dernière intervention
16 mai 2007
9
salut

tu dois passer un double en paramètre de la méthode

Rac(double x)

voila

a++
Messages postés
357
Date d'inscription
jeudi 24 octobre 2002
Statut
Membre
Dernière intervention
30 mars 2011

dans ta méthode Rac, il faut lui donner un double en paramétre. alors que tu ne lui passe aucun paramétre dans m.Rac().
tu as deux solutions :

double maracine=m.Rac(-5);
System.out.println(maracine);

ou

System.out.println(m.Rac(-5));
Messages postés
357
Date d'inscription
jeudi 24 octobre 2002
Statut
Membre
Dernière intervention
30 mars 2011

tu n'as pas spécifié de constructeur pour la class Mathematiques. donc m=new Mathematiques();
Messages postés
56
Date d'inscription
vendredi 21 mai 2004
Statut
Membre
Dernière intervention
7 mai 2006

Je comprends pas mon constructeur c'est bien dans le fichier qui fait appel à ma classe que je dois le créer ???
Messages postés
357
Date d'inscription
jeudi 24 octobre 2002
Statut
Membre
Dernière intervention
30 mars 2011

le constructeur porte toujours le même nom que la classe
Messages postés
56
Date d'inscription
vendredi 21 mai 2004
Statut
Membre
Dernière intervention
7 mai 2006

Merci, je m'en suis sorti.
Messages postés
56
Date d'inscription
vendredi 21 mai 2004
Statut
Membre
Dernière intervention
7 mai 2006

Ok donc voici le code de ma classe.
Il n'y a que l'objet pour ma racine de créer car j'ai une autre erreur maintenant à la compilation de mon fichier qui fait appel à la classe racine.


Racine.java:10: Rac(double) in Mathematiques cannot be applied to ()
System.out.println(m.Rac());
^

public class Mathematiques
{
//Champs
private double x=0;
private int a=0;
private int b=0;


//Constructeurs

public Mathematiques (double x)
{
this.x=x;
}

//Méthodes

public double Abs(double x)
{
return Math.abs(x);
}

public double Rac(double x)
{
return Math.sqrt(x);
}

public int Pgcd(int a, int b)
{
while (a > 0 || b > 0)
{
if (a>b) a-=b;
else b-=a;
}
if (a==0)return b;
else return a;
}
}

/////////////////////////////////////////////////////////////////

et le fichier qui fait appel à la classe Racine.

public class Racine
{
public static void main(String[] argv)
{
//Déclaration
Mathematiques m;
//Instanciation
m = new Mathematiques(-5);
m.Rac(-5);
System.out.println(m.Rac());
}
}

Merci de votre aide.
Messages postés
56
Date d'inscription
vendredi 21 mai 2004
Statut
Membre
Dernière intervention
7 mai 2006

Salut.
Ben c'est ce que j'ai fait il me semble.