Requisito previo: enumeración en Java
Por defecto, las enumeraciones tienen sus propios valores de string, también podemos asignar algunos valores personalizados a las enumeraciones. Considere el siguiente ejemplo para eso.
Ejemplos:
enum Fruits { APPLE(“RED”), BANANA(“YELLOW”), GRAPES(“GREEN”); }
En el ejemplo anterior, podemos ver que la enumeración de frutas tiene tres miembros, es decir, MANZANA, PLÁTANO y UVAS, que tienen sus propios valores personalizados, ROJO, AMARILLO y VERDE, respectivamente.
Ahora, para usar esta enumeración en el código, hay algunos puntos que debemos seguir:
- Tenemos que crear un constructor parametrizado para esta clase de enumeración. ¿Por qué? Porque, como sabemos, el objeto de la clase de enumeración no se puede crear explícitamente, por lo que para inicializar usamos un constructor parametrizado. Y el constructor no puede ser público o protegido, debe tener modificadores privados o predeterminados. ¿Por qué? si creamos public o protected, permitirá inicializar más de un objeto. Esto está totalmente en contra del concepto de enumeración.
- Tenemos que crear un método getter para obtener el valor de las enumeraciones.
// Java program to demonstrate how values can // be assigned to enums. enum TrafficSignal { // This will call enum constructor with one // String argument RED("STOP"), GREEN("GO"), ORANGE("SLOW DOWN"); // declaring private variable for getting values private String action; // getter method public String getAction() { return this.action; } // enum constructor - cannot be public or protected private TrafficSignal(String action) { this.action = action; } } // Driver code public class EnumConstructorExample { public static void main(String args[]) { // let's print name of each enum and there action // - Enum values() examples TrafficSignal[] signals = TrafficSignal.values(); for (TrafficSignal signal : signals) { // use getter method to get the value System.out.println("name : " + signal.name() + " action: " + signal.getAction() ); } } }
Producción:
name : RED action: STOP name : GREEN action: GO name : ORANGE action: SLOW DOWN
Este artículo es una contribución de Vihang Shah . Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA