JDK1.5 presenta un nuevo tipo - Enumeración. Aunque se considera una función "pequeña" en Java, aporta una conveniencia "grande" a mi desarrollo.
Uso 1: Constante
Antes de JDK1.5, definimos constantes: público estático público ...... ...... Ahora que con el enum, puede agrupar las constantes relevantes en un tipo de enum, y los enums proporcionan más métodos que constantes.
Color en enum público {rojo, verde, en blanco, amarillo}Uso 2: Switch
Las declaraciones de conmutación antes de JDK1.6 solo admiten tipos int, char y enum. El uso de Enums puede hacer que nuestro código sea más legible.
señal enum {verde, amarillo, rojo} clase de tráfico de clase pública {señal color = señaled; public void Change () {switch (color) {case rojo: color = signalgreen; romper; Caso amarillo: color = señalado; romper; Caso verde: color = Signalyellow; romper; }}}Uso 3: Agregue un nuevo método al enum
Si planea personalizar su propio método, debe agregar un punto y coma al final de la secuencia de instancia enum. Y Java requiere que la instancia enum se define primero.
Color en enum público {rojo ("rojo", 1), verde ("verde", 2), en blanco ("blanco", 3), yello ("amarillo", 4); // nombre de cadena privada variable de variable; Índice de int privado; // Construye el método Color privado (nombre de cadena, int index) {thisName = name; thisIndex = index; } // Método normal Public static String getName (int index) {for (color c: colorvalues ()) {if (cgetIndex () == index) {return cname; }} return null; } // Obtener el método establecido public String getName () {Return Name; } public void setName (nombre de cadena) {thisName = name; } public int getIndex () {Index return; } public void setIndex (int index) {thisIndex = index; }}Uso 4: Métodos para sobrescribir enumeración
Aquí hay un ejemplo de la anulación del método toString ().
Color en enum público {rojo ("rojo", 1), verde ("verde", 2), en blanco ("blanco", 3), yello ("amarillo", 4); // nombre de cadena privada variable de variable; Índice de int privado; // Construye el método Color privado (nombre de cadena, int index) {thisName = name; thisIndex = index; } // Método de sobrescribencia @Override public String toString () {return thisIndex+"_"+thisName; }}Uso 5: Implementar la interfaz
Todos los enums se heredan de la clase Java.lang.enum. Dado que Java no admite la herencia múltiple, los objetos enum no pueden heredar otras clases.
Comportamiento de interfaz pública {void print (); Cadena getInfo (); } Color de enum public en enum implementa el comportamiento {rojo ("rojo", 1), verde ("verde", 2), en blanco ("blanco", 3), yello ("amarillo", 4); // nombre de cadena privada variable de variable; Índice de int privado; // Construye el método Color privado (nombre de cadena, int index) {thisName = name; thisIndex = index; } // Método de interfaz @Override public String getInfo () {return thisName; } // método de interfaz @Override public void print () {SystemOutPrintln (thisIndex+":"+thisName); }}Uso 6: Use la interfaz para organizar la enumeración
Food Public Interface Food {Enum Coffee implementa la comida {Black_coffee, Decaf_coffee, Latte, Cappuccino} El postre enum implementa alimentos {fruta, pastel, gelato}}Uso 7: sobre el uso de colecciones de enumeración
java.util.enumset y java.util.enummap son dos colecciones enum. Enumset asegura que los elementos en la colección no se repitan; La clave en enummap es de tipo enum, y el valor puede ser de cualquier tipo. No explicaré el uso de estos dos conjuntos aquí, puede consultar la documentación JDK.
Para los detalles de implementación y los principios de enumeración, consulte:
Referencia: "ThinkingInjava" Cuarta edición //www.vevb.com/books/75540.html
Lo anterior es todo el contenido de este artículo. Espero que sea útil para el aprendizaje de todos y espero que todos apoyen más a Wulin.com.