2015-11-15 1 views
0

En ce moment je crée un éditeur de texte simple. Je veux savoir est mieux/plus propre d'avoir tous mes JMenus dans leur propre classe ou dans la même classe les uns que les autres? Chaque JMenu aurait son propre nombre de JMenuItems, avec les écouteurs et les fonctionnalités qui vont avec; chacun de ces objets aurait quelques centaines de lignes de code. Si je devais les mettre tous dans leurs propres classes, serait-il "correct" d'avoir le JTextPane pour simplement ajouter ces objets JMenu à cela? Est-ce que cette classe, la classe JTextPane, semble trop « vide », puisque tout cela est essentiellement faire:Est-il préférable d'avoir mes JMenus dans leur propre classe ou tous dans la même classe?

Menu1 menuObj1 = new Menu1(); 
menuObj.buildItemsAndStuff(); 
Menu2 menuObj2 = new Menu2(); 
menuObj3.buildItemsAndStuff(); 
menuObj2.buildItemsAndStuff(); 

textPaneObj.add(menuObj1); 
textPaneObj.add(menuObj2); 
...and so on 
+0

Puisqu'il s'agit d'une réponse subjective que vous cherchez, voici la mienne. Je les utilise toujours dans la même classe et je ne pense pas que ce soit un mauvais code. –

Répondre

1

L'objectif de code orienté objet est de fournir une classe qui instancier quelques objets. Ainsi, le meilleur à mon avis, serait d'avoir une classe générale MyMenu, puis:

MyMenu menu1 = new MyMenu(parameters); 
MyMenu menu2 = new MyMenu(parameters); 

Cependant, parfois, il peut être préférable d'avoir une classe spécifique pour chaque menu. Si c'est vraiment votre cas et si votre menu ne sera utilisé que dans une seule classe de votre code, je vous conseille de créer votre menu en tant que classe interne.

Quoi qu'il en soit, ceci est à la fois subjectif et dépend du cas par cas.