I ont une série de méthodes utilitaires statiques de cette forme:modèles de conception Java créationnel en oscillation
StringBuffer Util.doA(String arg0, String arg1, SomeEnum e);
StringBuffer Util.doB(String arg0, String arg1);
StringBuffer Util.doC(String arg0, String arg1, String arg2,String arg3);
StringBuffer Util.doD(String arg0, String arg1, String arg2,String arg3, AnotherEnum e);
etc
je veux afficher un JDialog qui est créée dynamiquement par exemple via le constructeur ou un autre modèle et une fois qu'un bouton est pressé, je veux appeler la méthode utilitaire appropriée en fonction du type de boîte de dialogue.
E.g. Si JDialog est de type A
l'actionlistener du bouton devrait appeler le Util.doA
en passant des données d'arguments des champs d'entrée et si JDialog est de type B
je veux l'actionlistener du bouton pour appeler Util.doB
etc.
Les types A, B etc. sont mes types faits sur commande. Ne sont pas obligatoires pour être utilisés. Je les ai juste pour faire la distinction entre chaque JDialog. JDialog de type A diffère de JDialog de type B dans certains champs de saisie. Mais l'apparence générale est similaire.
Totalement, il y a environ 20 types et 20 méthodes util correspondantes.
Existe-t-il un modèle standard pour ce problème?
J'ai commencé à étendre JDialog afin que chaque JDialog personnalisé se crée correctement et la méthode de actionlistener appelle la méthode utilitaire appropriée, mais je me retrouve avec 20 nouvelles classes.
J'ai donc pensé que s'il y avait une meilleure approche à cela. Des idées?
Merci
Je ne sais pas pour vous, mais sur, par exemple. Le bouton 'JDialog A', quand j'implémente le' actionPerformed() ', j'appelle' Util.doA (Chaîne arg0, Chaîne arg1, SomeEnum e); 'et je continuerai pour chaque JDialog. –
@The Gentleman Elite: Comme mentionné, je l'ai fait comme vous le dites.Mais j'ai fini avec 20 nouvelles classes étant introduites (un pour chaque boîte de dialogue). Je pensais qu'il y avait peut-être un modèle pour réduire les classes. – Cratylus