yasminexp
Messages postés12Date d'inscriptionsamedi 22 novembre 2003StatutMembreDernière intervention 9 avril 2004
-
Modifié le 15 nov. 2017 à 11:31
yasminexp
Messages postés12Date d'inscriptionsamedi 22 novembre 2003StatutMembreDernière intervention 9 avril 2004
-
22 nov. 2003 à 20:26
slt
voila ja deux fichier un Livre.java qui creer des livre avec nom auteur nbpage ... dedans un fonction compare2 qui est apler dans TestLivre.java, quand je compile il me fait l'erreur sur compare2(livre1,livre2) et y di cannot resolv symbole mùethode compare2(Livre,Livre)
Livre.java
import java.lang.*;
/*
@deprecated exercie8
/
public class Livre {
//variable
private String titre, auteur;
private int nbPages;
private double Prix;
private boolean PrixFixe;
//constructeur
public Livre(){};
public Livre(String unAuteur, String unTitre){
auteur=unAuteur;
titre=unTitre;
}
public Livre(String unAuteur, String unTitre,int lenbPages){
auteur=unAuteur;
titre=unTitre;
nbPages=lenbPages;
}
//accesseur
public String getAuteur(){
return auteur;
}
public String getTitre(){
return titre;
}
public int getnbPages(){
return nbPages;
}
public double getPrix(){
return Prix;
}
public boolean getPrixFixe(){
return PrixFixe;
}
//modificateur
void setNbpages(int nb){
if(nb<0){
System.out.println("!!attention pas de livre de moins de 0 pages !!");
}
else{nbPages=nb;}
}
void setAuteur(String Aut){
auteur=Aut;
}
void setTitre(String tit){
titre=tit;
}
//insere un prix si il nestpas deja inserer
void setPrix(double prix){
if(PrixFixe==false){
Prix=prix;
PrixFixe=true;
}
else{
System.out.println("!!attention prix deja saisi !!");
}
}
System.out.println(livre1); //affiche le contenu de livre grace à toString
System.out.println(livre2);
System.out.println(livre3);
livre3.setPrix(3000);
//affiche lauteur du plus gros livre en utilisant compare2
System.out.println("L'auteur du plus gros livre est: ");
String plusGros;
if(compare2(livre2, livre1)==0){
plusGros=livre1.getAuteur();
}
if(compare2(livre2, livre1)==1){
plusGros=livre1.getAuteur();
}
if(compare2(livre2, livre1)==-1){
plusGros=livre2.getAuteur();
}
else {
plusGros=livre2.getAuteur();
}
System.out.println(plusGros);
cs_GodConan
Messages postés2113Date d'inscriptionsamedi 8 novembre 2003StatutContributeurDernière intervention 6 octobre 201212 22 nov. 2003 à 14:03
GodConan :clown)
ben c pas magique ;o) l objet ;o)
la tu ne peu pas appeler d un otre objet une methode comme sa ...
tu devrai use une ref exemple :
livre1.compare2( livre2 );
avec dans livre :
public int compare( Livre unlivre )
{
if (nbPages == unlivre.nbPages) return 0;
if (nbPages > unlivre.nbPages) return 1;
return -1;
}
ou
Livre.compare( livre1, livre2 )
avec
public static int compare2(Livre unlivre1, Livre unlivre2)
{
if (unlivre1.nbPages == unlivre2.nbPages)
return 0;
if (unlivre1.nbPages > unlivre2.nbPages)
return 1;
else
return -1;
}
au lieu de :
public int compare2(Livre unlivre1, Livre unlivre2)
{
if (unlivre1.nbPages == unlivre2.nbPages)
return 0;
if (unlivre1.nbPages > unlivre2.nbPages)
return 1;
else
return -1;
}
la on fait reference a une methode STATIC de la class
de plus ;o) :
- sa sa ser pas a grd chose pour ton prog ;o)
@deprecated exercie8
- et le point virgule est en tro sur cette ligne :
public Livre(){}; :-p
cs_GodConan
Messages postés2113Date d'inscriptionsamedi 8 novembre 2003StatutContributeurDernière intervention 6 octobre 201212 22 nov. 2003 à 20:24
GodConan :clown)
//insere un prix si il nestpas deja inserer
public double setPrix(double prix)
{
if (this.prixFixe == false)
{
this.prixFixe = true;
this.prix = prix;
this.c.comptabiliser(this);
System.out.println("total : " + this.c.prixTotal());
}
else
{
System.out.println("Prix deja defini");
// prix = 0;
}
return this.prix;