Bonjour,
Je n'arrive pas à implémenter une classe fille descendant d'une classe abstraite si les 2 classes sont situées dans des packages différents.
Voici le code simplifié de la classe abstraite:
et voici sa fille
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 package javaapplication1; public abstract class Test { abstract void methode1(); abstract void methode2(); }
Si les 2 classes sont dans des packages différents, j'ai les messages d'erreurs suivants:
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 package javaapplication1.implementation; import javaapplication1.Test; public class ImpTest extends Test{ @Override void methode1() { throw new UnsupportedOperationException("Not supported yet."); } @Override void methode2() { throw new UnsupportedOperationException("Not supported yet."); } }
-au niveau de la classe "javaapplication1.Implementation.ImpTest is not abstract and does not override abstract method methode2() in java.applcation1.Test "
-au niveau des méthodes, "methode does not override or implement a method from a supertype"
Les méthodes methode1 et methode2 de la classe ImpTest semblent ne plus être reconnues comme provenant de la superclasse abstraite.J'ai pourtant utilisé les automatismes de Netbeans 7.1.1. pour
- créer les méthodes methode1 et methode2 dans la classe ImpTest pour permettre l'implémentation de ImpTest une fois la superclasse abstraite Test définie
- déplacer une classe d'un package à l'autre (glisser-déposer dans l'arborescence)
De plus, si les classes sont dans les mêmes packages, pas de problème!!
Pas de soucis non plus si je transforme la classe abstraite en interface.
Bogue ou erreur de ma part ?
Merci de m'aider.
Partager