Bonjour,
J'ai un petit problème de compréhension sur la généricité.
J'ai créer un formulaire avec swing. Ce formulaire contient des objets implémentant une interface Field ce qui me permet d'appliquer d'une façon générale les méthodes setValue(value) et getValue().
Mes objets étendent donc nécessairement la classe JComponent pour pouvoir les ajouter à un conteneur et implémentent l'interface Field.
Ma class Form set donc paramétrée comme suit :
Ceci étant je ne pense pas m'y prendre de la bonne manière étant donné que je dois me trimbaler la déclaration de ce type dans toutes les classes qui utilisent la class Form :Code:class Form<T extends JComponent & Field>
J'ai aussi remarqué que je ne peux pas déclarer un champ comme suit (ce qui m'aurait aidé):Code:
1
2
3
4
5
6
7
8
9 class A<T extends JComponent & Field>{ private Form<T>; } class B<T extends JComponent & Field>{ private Form<T>; private List<T> liste; }
Voilà si quelqu'un à une idée je suis preneur.Code:
1
2 private List<? extends JComponent & Field> liste;
Merci d'avance