Exercice en java
lindap
Messages postés
86
Statut
Membre
-
KX Messages postés 19031 Statut Modérateur -
KX Messages postés 19031 Statut Modérateur -
Bonjour,
public class Cercle {
static float pi = 3.1416f;
float rayon;
public Cercle(float rayon)
{ this.rayon = rayon; }
public float surface()
{ return rayon * rayon * pi;}
}
dans l'exécution de ce programme sur netBeans il y a une erreur la voici :
class cercle is public, should be declared in a file named cercle.java
j'arrive pas a comprendre ou dois je déclarer cette classe svp??
public class Cercle {
static float pi = 3.1416f;
float rayon;
public Cercle(float rayon)
{ this.rayon = rayon; }
public float surface()
{ return rayon * rayon * pi;}
}
dans l'exécution de ce programme sur netBeans il y a une erreur la voici :
class cercle is public, should be declared in a file named cercle.java
j'arrive pas a comprendre ou dois je déclarer cette classe svp??
A voir également:
- Exercice en java
- Jeux java itel - Télécharger - Jeux vidéo
- Waptrick java football - Télécharger - Jeux vidéo
- Waptrick java voiture - Télécharger - Jeux vidéo
- Eclipse java - Télécharger - Langages
- Java apk - Télécharger - Langages
4 réponses
Le message d'erreur est assez explicite, toute classe publique doit être enregistrée dans un fichier java qui porte son nom.
Ta classe Cercle devra donc être dans le fichier Cercle.java
Ta classe Cercle devra donc être dans le fichier Cercle.java
Salut,
Ton programme n'est pas exécutable directement.
Il doit l'être à partir du programme qui doit l'utiliser.
Exemple depuis la méthode main(...) du programme de l'utilisateur:
Mais (Poo oblige) ta class Cercle et son constructeur doivent être modifiés:
Cordialement,
Dan
Ton programme n'est pas exécutable directement.
Il doit l'être à partir du programme qui doit l'utiliser.
Exemple depuis la méthode main(...) du programme de l'utilisateur:
Cercle unCercle;
unCercle = new Cercle(10f); // on passe le rayon au constructeur
float surface = unCercle.surface; // on récupère la surface
System.out.println("Surface: " + surface);
Mais (Poo oblige) ta class Cercle et son constructeur doivent être modifiés:
public class Cercle
{
private float pi = 3.1416f;
private float rayon;
public float surface;
public Cercle(float valRayon)
{
rayon = valRayon;
surface = rayon * rayon * pi;
}
Cordialement,
Dan
Non, la classe Cercle n'a pas besoin d'être modifié, surface est une propriété du cercle, ça ne fait pas partie de la structure de ce cercle, ce doit donc bien être une méthode !
On aura alors : float surface = unCercle.surface(),
Remarque : la constante Math.PI existe, autant s'en servir...
On aura alors : float surface = unCercle.surface(),
Remarque : la constante Math.PI existe, autant s'en servir...
Ps,
Une remarque tout de même:
L'utilisation d'un constructeur n'a rien dobligatoire...
et la partie utilisation depuis la méthode main(...
Dan
Une remarque tout de même:
L'utilisation d'un constructeur n'a rien dobligatoire...
public class Cercle
{
private float pi = 3.1416f;
private float surface;
public float CalculerLaSurfaceDunCercle(float rayon)
{
surface = rayon * rayon * pi;
return surface;
}
}
et la partie utilisation depuis la méthode main(...
Cercle c = new Cercle();
float surface = c.CalculerLaSurfaceDunCercle(10f);
System.out.println("Surface: " + surface);
Dan
public Cercle(float rayon)
msg d'erreur: invalid method declaration;return type required