Bonsoir!
Je cherche à améliorer certaines de mes compétences par thèmes et j'étudie aujourd'hui l'instanciation et les classes internes.
Je suis face à des classes Vehicule et des classes Tourisme qui sont des sous classes de la classes Transport. La classe Véhicule a la classes interne Moteur et Carrosserie. La classe Moteur a un contructeur et la classe Carosserie n'en a pas.
D'où le code suivant:
Je cherche a instancier un Moteur m1 dont je dois préciser le type et une Carrosserie C1 dont je dois préciser aussi le type.
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
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42 public class CC15Ex3 { public static void main(String[] args){ Vehicule t1 = new Tourisme(10,90); } } class Transport{ int no; int annee; } class Vehicule extends Transport{ int puissance; String couleur; public String toString(){ return "Vehicule no " + no +" puissance "+puissance; } Moteur mot; static class Moteur{ static int annee; int no; int kilometrage; static int noC=100; static int puissance =90; Moteur(){ } public String toString(){return "Moteur no" + no+" km "+ kilometrage+ "puiss" + puissance +" année "+ annee;} } class Carosserie{ String couleur; } } class Tourisme extends Vehicule{ String marque; Tourisme(int n, int p){ no=n; } }
J'ai donc fait:
Mais, en vérifiant sur Eclispe, on remarque que la plateforme signale
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 public static void main(String[] args){ Moteur m1 =Vehicule.Moteur(); Carrosserie c1= Vehicule.Carosserie; Vehicule t1 = new Tourisme(10,90); }
- "Multiple markers at this line
- - Moteur cannot be resolved to a type
- - The method Moteur() is undefined for the type "
pour la première instanciation. Et
- Multiple markers at this line
- - Carrosserie cannot be resolved to a type
- - Vehicule.Carosserie cannot be resolved to a variable
pour la seconde.
Tandis que le compilateur crie:
Qu'ai je fais de mal?Exception in thread "main" java.lang.Error: Unresolved compilation problems:
Moteur cannot be resolved to a type
The method Moteur() is undefined for the type Vehicule
Carrosserie cannot be resolved to a type
Vehicule.Carosserie cannot be resolved to a variable
at exercices.CC15Ex3.main(CC15Ex3.java:6)
Partager