Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3040 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  Erreur de compilation Java "cannot find symbol" sous ubuntu 9.04

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Erreur de compilation Java "cannot find symbol" sous ubuntu 9.04

n°1947716
mickeynad
Posté le 06-12-2009 à 17:49:09  profilanswer
 

Bonjour à tous,
 
J'en appelle à votre aide. J'ai fait un petit logiciel en java de gestion des pièces automobiles qui est constitué de 6 classes (héritage simple):
-une classe abstraite Piece (classe mère);
-Deux classes qui sont une extension de la classe Piece:
*PieceDeBase;
*PieceComposite (classe abstraite);
-Deux classes qui sont une extension de la classe PieceComposite:
*PieceCompositeEnKit;
*PieceAssemblee;
-Une classe MainPiece qui est une application de toutes ces 5 classes.
 
Les 6 classes sont dans le meme répertoire Pieces.
 
Lorsque je compile la super classe Piece, tout va bien, j'ai aucune erreur. Par contre, lorsque je compile les sous classes, j'ai une erreur du genre:
 

PieceDeBase.java:7: cannot find symbol
symbol: class Piece
public class PieceDeBase extends Piece
^
PieceDeBase.java:37: cannot find symbol
symbol : variable super
location: class Prog.Pieces.PieceDeBase
{return super.toString()+"-de base-";}
 
 

 
 
Ce sont les seules erreurs que j'ai pour toutes mes classes.
 
Voici ma classe Piece:  
 
 
package Prog.Pieces;
 
import java.util.*;
import java.io.*;
 
public abstract class Piece
{
//Attributs----------------------------------------------------------------------------------
 
 protected String nom;
 protected String referenceDeBase;
 
//Constructeurs------------------------------------------------------------------------------
 
Piece()
  {nom="inconnu"; referenceDeBase="000000";}
 
Piece(String n, String r)
  {nom=n; referenceDeBase=r;}
 
//Accesseurs---------------------------------------------------------------------------------
public String getNom() {return nom;}
public void setNom(String n) {nom=n;}
 
public String getReferenceDeBase() {return referenceDeBase;}
public void setReferenceDeBase(String r) {referenceDeBase=r;}
 
//Autres methodes----------------------------------------------------------------------------
 
public String toString()
{return nom+" "+getReferenceDeBase();}
 
abstract public float prix();
 
abstract public float dureeGarantie();
 
abstract public float dureeFabrication();
 
abstract public String prefixe();
 
public String referenceDeBase() {return referenceDeBase;}
 
public void affiche()
  {
   System.out.println("Nom : "+getNom()+"\n"+
                      "Reference : "+referenceDeBase()+"\n"+
                      "Prix : "+prix()+"euro(s)\n"+
                      "Garantie : "+dureeGarantie()+"mois\n"+
                      "Duree de fabrication : "+dureeFabrication()+"jour(s)\n" );
  }
 
//Partie protegee----------------------------------------------------------------------------
 
protected String afficheCommeComposants(int decalage)
  {
   String Decale="";
   for (int i=0; i<decalage; i++)
   Decale +="    ";
   return Decale+nom+" - "+referenceDeBase()+"\n";
  }
 
}
 

 
Et voici ma classe PieceDeBase (pour ne vous citer que celles la):  
 
 
package Prog.Pieces;
 
import java.util.*;
import java.io.*;
 
public class PieceDeBase extends Piece
{
//Attributs-----------------------------------------------------------------
 
 private float prix;
 private float dureeGarantie;
 private float dureeFabrication;
 
//Constructeurs-------------------------------------------------------------
 
 PieceDeBase()
 {prix=0; dureeGarantie=0; dureeFabrication=0;}
 
 PieceDeBase(String n, String r, float p, float dg, float df)
  {super(n,r); prix=p; dureeGarantie=dg; dureeFabrication=df;}
 
//Accesseurs----------------------------------------------------------------
 
 public float getPrix() {return prix;}
 public void setPrix(float p) {prix=p;}
 
 public float getDureeGarantie() {return dureeGarantie;}
 public void setDureeGarantie(float dg) {dureeGarantie=dg;}
 
 public float getDureeFabrication() {return dureeFabrication;}
 public void setDureeFabrication(float df) {dureeFabrication=df;}
 
//Autres methodes-----------------------------------------------------------
 
 public String toString()
   {return super.toString()+"-de base-";}
 
 public float prix() {return prix;}
 
 public float dureeGarantie() {return dureeGarantie;}
 
 public float dureeFabrication() {return dureeFabrication;}
 
 public String prefixe() {return "00"+super.reference();}
 
}
 

 
 
Est-ce une erreur de mon classpath ou de mon code?
Je comprends vraiment rien, mon code me semblait juste pourtant.
Si vous pouviez m'aider, je vous en serais très reconnaissante.
Cordialement.

mood
Publicité
Posté le 06-12-2009 à 17:49:09  profilanswer
 

n°1948577
cbeyls
Hail to the King, Baby
Posté le 09-12-2009 à 00:29:09  profilanswer
 

Si tu compiles en ligne de commande, tu dois ajouter le répertoire où se trouve ta classe "Piece" au classpath. Si c'est le répertoire courant, c'est "-cp ."

n°1948618
mickeynad
Posté le 09-12-2009 à 10:02:39  profilanswer
 

merci pour ta reponse mais c'est pas cela, j'ai deja essaye. J'ai regle mon pb en compilant ma super classe et mes sous classes en une seule commande : javac SuperClass.java SousClasse1.java
 

n°1948619
mickeynad
Posté le 09-12-2009 à 10:02:39  profilanswer
 

merci pour ta reponse mais c'est pas cela, j'ai deja essaye. J'ai regle mon pb en compilant ma super classe et mes sous classes en une seule commande : javac SuperClass.java SousClasse1.java
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  Erreur de compilation Java "cannot find symbol" sous ubuntu 9.04

 

Sujets relatifs
Programmer une impression en java (ac saut de ligne)[c] erreur de segmentation
Cannot modify header information - headers already sent by pb servlet java pour alivePdf
Empecher l'erreur lors du chargement du XMLErreur mysql : corrupted double-linked list
Bug Visual Basic : impossible de voir la ligne de l'erreurProblème de lecture de base de données SQLite (Java)
a l'aide: creation d'un objet prix et un serveur en JAVAInternet Explorer : erreur de syntaxe ligne 4
Plus de sujets relatifs à : Erreur de compilation Java "cannot find symbol" sous ubuntu 9.04


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR