[Java] Surcharge : aide
tachag
Messages postés
46
Statut
Membre
-
choubaka Messages postés 5535 Date d'inscription Statut Modérateur Dernière intervention -
choubaka Messages postés 5535 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
Alors, j'ai essayé de faire une surcharge.
Ma question est : pourquoi lorsque je fais execute file, l'information n'apparaît pas?
Je vous transmets seulement le code d'une classe :
class Camion extends Vehicule
{
// définition des attributs
String vitesse;
String couleur;
// Constructeur
Camion(String saMarque,String sonFonctionnement,String saVitesse, String laCouleur)
{
// Appel du constructeur de la classe de base: Vehicule
super(saMarque,sonFonctionnement);
vitesse=saVitesse;
}
// définition des méthodes
void getInformation()
{
System.out.println("");
System.out.println("Information sur le camion:");
System.out.println("Marque:" + marque);
System.out.println("Fonctionnement:" + fonctionnement);
System.out.println("Vitesse:" + vitesse);
System.out.println("");
}
// Surcharge : Permet de définir dans la même classe plusieurs méthodes.
void getInformation(String laCouleur)
{
System.out.println("");
System.out.println("Information sur la couleur du camion:");
System.out.println("Couleur:" + couleur);
System.out.println("");
}
} // fin de la classe Camion
Alors, j'ai essayé de faire une surcharge.
Ma question est : pourquoi lorsque je fais execute file, l'information n'apparaît pas?
Je vous transmets seulement le code d'une classe :
class Camion extends Vehicule
{
// définition des attributs
String vitesse;
String couleur;
// Constructeur
Camion(String saMarque,String sonFonctionnement,String saVitesse, String laCouleur)
{
// Appel du constructeur de la classe de base: Vehicule
super(saMarque,sonFonctionnement);
vitesse=saVitesse;
}
// définition des méthodes
void getInformation()
{
System.out.println("");
System.out.println("Information sur le camion:");
System.out.println("Marque:" + marque);
System.out.println("Fonctionnement:" + fonctionnement);
System.out.println("Vitesse:" + vitesse);
System.out.println("");
}
// Surcharge : Permet de définir dans la même classe plusieurs méthodes.
void getInformation(String laCouleur)
{
System.out.println("");
System.out.println("Information sur la couleur du camion:");
System.out.println("Couleur:" + couleur);
System.out.println("");
}
} // fin de la classe Camion
5 réponses
-
salut
tu oublies de donner une valeur à "couleur" dans ton constructeur -
en fait deux erreurs dans ta classe
class Camion extends Vehicule { // définition des attributs String vitesse; String couleur; // Constructeur public Camion(String saMarque,String sonFonctionnement,String saVitesse, String laCouleur) { // Appel du constructeur de la classe de base: Vehicule super(saMarque,sonFonctionnement); this.vitesse=saVitesse; this.couleur = laCouleur; } // définition des méthodes public void getInformation() { System.out.println(""); System.out.println("Information sur le camion:"); System.out.println("Marque:" + marque); System.out.println("Fonctionnement:" + fonctionnement); System.out.println("Vitesse:" + vitesse); System.out.println(""); } // Surcharge : Permet de définir dans la même classe plusieurs méthodes. public void getInformation(String laCouleur) { this.couleur = laCouleur; System.out.println(""); System.out.println("Information sur la couleur du camion:"); System.out.println("Couleur:" + couleur); System.out.println(""); } } // fin de la classe Camion -
essaye ça ...
public class Camion extends Vehicule { // définition des attributs private String vitesse; private String couleur; // Constructeur public Camion(String saMarque,String sonFonctionnement,String saVitesse, String laCouleur) { // Appel du constructeur de la classe de base: Vehicule super(saMarque,sonFonctionnement); this.setVitesse(saVitesse); this.setCouleur(laCouleur); } private void setVitesse(string vitesse){ this.vitesse = vitesse; } private void setCouleur(String couleur){ this.couleur = couleur; } //exemples de surcharge de méthodes public void changeTypeCamion(String vitesse){ this.setVitesse(vitesse); } public void changeTypeCamion(String vitesse, String couleur){ this.setVitesse(vitesse); this.setCouleur(couleur); } // définition des méthodes public void getInformation() { System.out.println(""); System.out.println("Information sur le camion:"); System.out.println("Marque:" + marque); System.out.println("Fonctionnement:" + fonctionnement); System.out.println("Vitesse:" + vitesse); System.out.println(""); System.out.println("Couleur:" + couleur); } } // fin de la classe Camion -
fonctionne pas ce code :
public void getInformation(String laCouleur)
{
this.couleur = laCouleur;
System.out.println("");
System.out.println("Information sur la couleur du camion:");
System.out.println("Couleur:" + couleur);
System.out.println("");
} -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
j'ai testé la classe décrite au point 3 et ça marche nickel