IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Java Discussion :

classe mère et enfant


Sujet :

Java

  1. #1
    Membre du Club
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    mai 2014
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : mai 2014
    Messages : 90
    Points : 55
    Points
    55
    Par défaut classe mère et enfant
    bonjour j'ai écrit 2 classes une mère et une enfant mais j'ai un message d'erreur sur le constructeur

    erreur:
    java: constructor Vehicule in class Vehicule cannot be applied to given types;
    required: no arguments
    found: java.lang.String
    reason: actual and formal argument lists differ in length
    classe mère:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    public class Vehicule {
        boolean automatique=false;
        String couleur="vert";
     
        Vehicule(boolean automatique,String couleur){
            this.automatique=automatique;
            this.couleur=couleur;
     
            }


    classe enfant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    public class Voiture extends Vehicule {
        int vitesse=100;
        int rapport;
        Moteur moteur;
     
        Voiture (int vitesse, int rapport,Moteur mot,String couleur){
            super(couleur)
            this.rapport=rapport;
            this.vitesse=vitesse;
     
            this.moteur=mot;
           }
            int accelerer(int v){
                this.vitesse=this.vitesse+v;
                return this.vitesse;
            }
     
        }
    et la classe main:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    public class Main {
        public static void main(String... args){
            Moteur mot=new Moteur(5,"essence");
            Voiture clio=new Voiture(5,100,Moteur mot, String couleur);
     
            System.out.println(clio.vitesse+" "+clio.couleur);
            int vit=clio.accelerer(50);
            System.out.println(clio.vitesse);
     
            System.out.println(clio.moteur.carburant);
        }
    }
    merci

  2. #2
    Membre du Club
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    mai 2014
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : mai 2014
    Messages : 90
    Points : 55
    Points
    55
    Par défaut
    j'ai ça maintenant comme message
    C:\Users\jm18c\OneDrive\Bureau\java\src\Main.java:7:53
    java: incompatible types: java.lang.String cannot be converted to Vehicule

  3. #3
    Membre du Club
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    mai 2014
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : mai 2014
    Messages : 90
    Points : 55
    Points
    55
    Par défaut
    j'ai oublié la classe moteur:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    class Moteur  {
        int cylindre=5;
        String carburant="essence";
        Moteur(int cylindre,String carburant){
     
            this.cylindre=cylindre;
            this.carburant=carburant;
     
        }
        }
    Après quelques modifs
    C:\Users\jm18c\OneDrive\Bureau\java\src\Main.java:9:48
    java: ')' expected

  4. #4
    Modérateur

    Profil pro
    Inscrit en
    septembre 2004
    Messages
    12 179
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : septembre 2004
    Messages : 12 179
    Points : 20 624
    Points
    20 624
    Par défaut
    Hello,

    le problème a l'air d'être dans cette ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Voiture clio=new Voiture(5,100,Moteur mot, String couleur);
    Elle est bizarre...

    Tu appelles le constructeur de Voiture, avec 4 paramètres.

    Les deux premiers tu passes une seule chose. Un nombre. Le premier 5, le deuxième 100.

    Et dans les deux derniers paramètres tu as écrit deux trucs. "Moteur mot", "String couleur". Un type de variable et un nom de variable.

    A priori ça doit être soit l'un soit l'autre, soit on donne une chose par paramètre, soit deux. En tout cas on fait pas de mélange.
    Mais du coup c'est lequel, je ne me souviens plus...
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 6
    Dernier message: 01/05/2006, 19h05
  2. Réponses: 16
    Dernier message: 07/02/2006, 14h19
  3. [POO]Appelé une méthode d'une classe mère
    Par LE NEINDRE dans le forum Langage
    Réponses: 2
    Dernier message: 14/12/2005, 14h44
  4. Réponses: 11
    Dernier message: 08/07/2005, 14h48
  5. Ma classe fille n'hérite pas de sa classe mère
    Par Invité dans le forum Langage
    Réponses: 3
    Dernier message: 15/06/2005, 12h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo