Bonjour,
Je cherche à proposer différentes options pour l’exécution d’un programme. Pour simplifier mettons qu’il s’agit de 3 manières (manière 1, manière 2, manière 3) de faire un calcul.
Pour le moment je fonctionne comme cela :
J’ai une énumération qui défini les manières disponibles :Et dans ma classe principale j’ai une fonction calcule() qui attend la manière comme paramètre. Dans cette méthode, à l’aide d’un switch, j’utilise la méthode qui me convient :
Code : Sélectionner tout - Visualiser dans une fenêtre à part public enum ManieresDeCalcul {MANIERE_1, MANIERE_2, MANIERE_3}
Première question : s’agit t’il d’une bonne méthode pour résoudre ce type de problème ou y a t’il d’autre moyen plus élégant ?
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 public int calcule(ManieresDeCalcul maniere) { int resultat; resultat = 0; switch(maniere) { case MANIERE_1 : //code pour la maniere de calcul 1 => resultat break; case MANIERE_2 : //code pour la maniere de calcul 2 break; case MANIERE_3 : //code pour la maniere de calcul 3 break; } return resultat; }
* * *
Ensuite, j’aimerais avoir la possibilité d’avoir un comportement par défaut. Il me semble que cela ne pose pas de problème, je n’ai qu’à avoir la même méthode sans paramètres :
(en considérant que la MANIERE_1 est celle par défaut)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 public int calcule() { return calcule(ManieresDeCalcul.MANIERE_1); }
* * *
Maintenant je souhaiterais pouvoir définir quelle va être la méthode par défaut à utiliser (un fichier texte me semble assez approprié).
Il me semble que Java propose un mécanisme de fichier Properties pour répondre à ce type de problème.
S'agit il d'une bonne idée (sinon comment faire autrement) ?
Où puis je trouver un exemple, ou de la doc pour en savoir plus ?
Est-ce que dans le fichier properties je peux forcer le fait de devoir avoir une valeur contenue dans une énumération (ou faut-il que je refasse un mapping de type String -> Valeur de l’Enum)
Je voudrais utiliser une méthode standard et utilisée par tous, histoire d'éviter de réinventer une roue qui doit déjà exister en standard...
Merci






Répondre avec citation


sauf que moi je n'utilise pas d'enum ce qui peut être utilisé avec n'importe quel version de java 
Partager