Bonjour,
Je ne suis pas nouveau en Java mais j'ai un petit trou (à vrai dire çà fait quelques mois que j'en ai plus fait)
J'ai une question.
Dans le code suivant, j'aimerais que les appels à ActionFormSubscriber.processBeforeChecking passe également par le code de l'ancêtre (BelgiumAbstractNavAction.processBeforeChecking()
càd la ligne
Beaucoup de classes similaires à ActionFormSubscriber héritent de BelgiumAbstractNavAction, et je souhaite ajouter un comportement commun à toutes ces classes.
Code : Sélectionner tout - Visualiser dans une fenêtre à part Date currentTime = new Date();
Auparavant, les classes ActionFormSubscriber et similaires héritaient directement de AbstractNavAction, mais je n'ai pas la main sur cette classe, c'est pour cela que j'ai voulu créer une classe abstraite intermédiaire et l'utiliser pour mettre le code "commun".
Voici donc mon code:
Classe ActionFormSubscriber hérite de BelgiumAbstractNavAction
Classe abstraite BelgiumAbstractNavAction hérite de AbstractNavAction
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 public class ActionFormSubscriber extends BelgiumAbstractNavAction { ... protected void processBeforeChecking(NavContext env) { String postValue = env.getParameter("postValue"); if (postValue!=null && postValue.endsWith(".refresh")) { env.setCheckingModeActivated(false); } } ... }
Classe abstraite AbstractNavAction
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 public abstract class BelgiumAbstractNavAction extends AbstractNavAction { ... protected void processBeforeChecking(NavContext env) { Date currentTime = new Date(); } ... }
Merci d'avance pour votre aide!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 public abstract class AbstractNavAction { ... protected void processBeforeChecking(NavContext env) { } ... }
Nicolas.
Partager