Privé enum emplacement à l'intérieur d'une classe en Java
Lors de la déclaration d'un enum à l'intérieur d'une classe en java j'ai vu ces 2 approches:
1)
public class MyClass {
private enum MyEnum {
A, B, C;
}
/* Static fields */
/* Instance variables */
/* Methods */
}
2)
public class MyClass {
/* Static fields */
/* Instance variables */
/* Methods */
private enum MyEnum {
A, B, C;
}
}
Lequel est le plus utilisé? Est-il une convention?
Est-il un problème si vous placez les choses différemment?
Je veux juste savoir si il y a une convention pour cela ou si c'est une question de préférence personnelle.
non pas du tout, et pour être sur le côté plus sûr
Je préfère la première
Je préfère déclarer
Je veux juste savoir si il y a une convention pour cela ou si c'est une question de préférence personnelle.
non pas du tout, et pour être sur le côté plus sûr
not that I know of
. Se référer à ma réponse ci-dessousJe préfère la première
Je préfère déclarer
enum
etc avant que je les utilise.
OriginalL'auteur miviclin | 2013-10-12
Vous devez vous connecter pour publier un commentaire.
Généralement en Java, imbriqués les types de données (par exemple des classes, les enums) aller au fond d'un fichier.
Cependant, pour faire court, privé énumérations comme celui que vous avez posté (qui se sentent plus comme des champs), j'irais avec le n ° 1.
Pour les longues énumérations, je voudrais aller avec le n ° 2 ou les mettre dans un fichier séparé.
OriginalL'auteur Joel Christophel
Il n'est pas une convention, mais de ce que j'ai vu, à l'exemple 1 est utilisé le plus souvent. Personnellement, je place dans cette façon aussi.
OriginalL'auteur Troubleshoot
Java ne dispose pas d'un
typedef
déclaration (comme en C et C++). Pour déclarer de nouveaux types en Java, vous devez déclarer une nouvelle classe, puis les variables peuvent être déclarées de cette catégorie de type. Aussi Java utilise en Avant des références, un compilateur java est plus intelligent que le compilateur C, en ce qu'elle permet de méthodes pour être invoquée avant qu'ils ne soient définis. Ceci élimine la nécessité de déclarer des fonctions dans un fichier d'en-tête avant de les définir dans un fichier de programme, comme cela se fait dans C.Je peux placer ma
enum
n'importe où et peut accéder à partir de n'importe où. Reportez-vous exemple.J'ai vérifié et à la fois la méthode
method1
etmethod2
a accès àenumTest
.OriginalL'auteur Rupesh
Il n'y a rien de mal avec l'un d'eux. C'est plus une question d'opinion, mais je voudrais go go #1.
OriginalL'auteur Noris