Choix de la bonne méthode
Bonjour, j'étudie un programme avec deux classes: "VueSwing" et "VueJFX" (exactement les même IHM, la seul diff est la bibliotheque utilisée) héritant de "ControleurVue" (classe abstraite). Les classes filles remonte les actions utilisateur a la classe mére en utilisant un ID pour différencier les actions.
VueSwing:
Code:
1 2 3 4 5 6 7 8
|
public void actionPerformed(ActionEvent e) {
if (c == startConnexionbutton) {
actionUser(1);
} else if (c == stopConnexionButton) {
actionUser(2);
}
} |
Vue JavaFX:
Code:
1 2 3 4 5 6 7 8 9
|
public void initialize(URL arg0, ResourceBundle arg1) {
startConnexionbutton.setOnMouseReleased(mouseEvent -> {
actionUser(1);
});
stopConnexionButton.setOnMouseReleased(mouseEvent -> {
actionUser(2);
});
} |
ControleurVue:
Code:
1 2 3 4 5 6 7 8 9 10 11
|
public void actionUser(int idAction) {
switch (idAction) {
case 1:
connection();
break;
case 2:
deconnection();
break;
}
} |
La méthode "connection()"" appel une méthode abstraite "refreshNumeroCE()"" de "ControleurVue".
Code:
1 2 3 4 5 6
|
private void connection(){
refreshNumeroCE();
}
public abstract void refreshNumeroCE(); |
Logique, cette méthode est définie dans "VueSwing" et "VueJFX" avec un body différent.
J'ai fait un test et java choisi la bonne méthode (refreshNumeroCE() définit dans VueJFX ou définit dans VueSwing) en fonction de l'IHM sur la quelle l'utilisateur a cliquer et je n'arrive pas a comprendre comment.
Pouvez vous m'aider ?