Implementer une interface sans réecrire toute les methodes

Résolu
facilus68 Messages postés 5 Date d'inscription mardi 25 novembre 2008 Statut Membre Dernière intervention 25 mai 2009 - 5 févr. 2009 à 09:28
facilus68 Messages postés 5 Date d'inscription mardi 25 novembre 2008 Statut Membre Dernière intervention 25 mai 2009 - 5 févr. 2009 à 11:56
Bonjour,

j'utilise l'api quartz et je suis debutant avec, je veux faire une classe qui implemente de l'interface Scheduler en lui rajoutant d'autre méthodes.

le probleme est quand j'implemente l'interface, je dois redéfinir toute les methodes de l'interface Scheduler, y'a t'il un moyen pour implementer cette interface sans réecrire ces methodes ?

Merci

4 réponses

cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
5 févr. 2009 à 10:28
Salut,

Tu as deux méthodes :
- Soit tu dérive d'une classe qui implémente déjà ton interface, et ainsi, tu n'as plus qu'à surcharger les méthodes que tu veux (la solution la moins maintenable !!!)
- Soit tu utilise le pattern Décorateur : une classe qui implémente l'interface avec ta propre implémentation (cà peut être une classe qui existe déjà), ta classe perso qui implémente la même interface, et qui ne fait qu'appeler les méthodes de la première classe pour tout les méthodes de l'interface, mais qui redéfinit le code des quelques méthodes que tu veux modifier (c'est ce qu'on appelle la composition d'objets, ce qui est bien plus standard en java).
______________________________________
DarK Sidious
3
facilus68 Messages postés 5 Date d'inscription mardi 25 novembre 2008 Statut Membre Dernière intervention 25 mai 2009
5 févr. 2009 à 10:33
Merci boucoup DarkSidious, j'ai utiliser le pattern.
0
super_toinou Messages postés 764 Date d'inscription mardi 25 mai 2004 Statut Membre Dernière intervention 8 mars 2011 6
5 févr. 2009 à 11:39
Hello,

un petit tips pour ce genre d'opération si t'es sous eclipse.
Dans ta classe perso qui implémente l'interface, tu as comme variable un objet qui étend aussi l'interface sur lequel  tu vas appeler les méthodes.
Pour pas te prendre la tête, tu sélectionne la variable puis
clic droit -> source -> Generate Delegates Methods... tu sélectionnes tout ce que tu veux et le code est crée automatiquement.

Ça te permet de gagner pas mal de temps suivant le nombre de méthodes de ton interface (typiquement pour une Connection tu gagnes bien 10 min :) )

++ Toinou
0
facilus68 Messages postés 5 Date d'inscription mardi 25 novembre 2008 Statut Membre Dernière intervention 25 mai 2009
5 févr. 2009 à 11:56
c'est ce que j'ai fait, merci boucoup, ta utiliser l'api Quartz ?
0
Rejoignez-nous