2012-05-07 51 views
9

Tengo un tipo de enumeración ...Java Enum Tipo de la codificación Convención

public static enum Methods { 
    NOTEQUAL, 
    ORDERED, 
    minMatch, 
    minItem, 
    minLength, 
    sameLength, 
} 

La cuestión es cómo debería utilizar la convención de codificación. ¿Debo usar camelCase NotEqual (que uso en una clase simple) o debería hacer esto: NOT_EQUAL? O simplemente use caracteres en mayúsculas: NOTEQUAL, SAMELENGTH?

¿Hay alguna convención de código para esto?

+1

http://stackoverflow.com/questions/3069743/coding-conventions-naming-enums eche un vistazo a ese tema. –

+0

Ok, entonces la respuesta es "_" y en mayúsculas sé que debería usar el nombre como constantes, pero no sabía cómo articular el nombre ... – czupe

+1

De todos modos, gracias Alex Stybaev y Alexender Pavlov, y no el duplicado exacto, porque la pregunta era ¡cómo articular! las enumeraciones ... – czupe

Respuesta

30

Yo diría que la enumeración en sí, ya que es una clase, debe seguir la convención de camello como cada clase, mientras que las entradas de enum, ya que son constantes, deben ser mayúsculas con guión bajo (por ejemplo, NOT_EQUAL).

La versión en mayúsculas sin subrayado es absolutamente ilegible, nunca la use.

+0

+1 - es el camino a seguir. – Romain

+1

Y el nombre de clase suele ser singular (-> "Método" no "Métodos") – Puce

+2

Solo como referencia futura, los [usuarios de Java están de acuerdo] (http://docs.oracle.com/javase/tutorial/java/javaOO/ enum.html): 'Debido a que son constantes, los nombres de los campos de un tipo enum están en letras mayúsculas. – Lucas

3

Véase el siguiente análisis:

Coding Conventions - Naming Enums

Mi propio punto de vista es que la enumeración es como constantes por lo que deben estar en mayúsculas.

+0

Una enumeración no es ciertamente una constante, es un tipo, como una clase. Los valores enumerados se pueden considerar como constantes (si eso es lo que quiere decir que debe corregir su redacción). Una variable de un tipo enum podría considerarse una constante, si se declarara como final. – EricS