Skip to content

Enums en Java

Los enums (o enumeraciones) en Java son un tipo especial de clase que representa un conjunto de constantes. Facilitan la creación de variables que pueden tomar un número limitado de valores predefinidos, mejorando la legibilidad y la seguridad del código.

Definición de Enums

En Java, un enum se define utilizando la palabra clave enum. Cada valor en un enum es una instancia de la clase enum.

Sintaxis:

enum Dia {
    LUNES, MARTES, MIERCOLES, JUEVES, VIERNES, SABADO, DOMINGO
}

Características de los Enums en Java

Características Descripción
Tipo Seguro Los enums proporcionan un tipo seguro, evitando valores no válidos.
Métodos Los enums pueden tener métodos, atributos y contructores.
Comparación Se pueden comparar usando == y equals().

Cuidado

Los enums son finales por defecto, lo que significa que no se pueden extender.

Ejemplo de Enums en Java

enum Color {
    ROJO, VERDE, AZUL;
}

public class Main {
    public static void main(String[] args) {
        Color miColor = Color.ROJO;

        switch (miColor) {
            case ROJO:
                System.out.println("El color es rojo.");
                break;
            case VERDE:
                System.out.println("El color es verde.");
                break;
            case AZUL:
                System.out.println("El color es azul.");
                break;
        }
    }
}

Metodos en Enums

Los enums pueden tener métodos personalizados. Por ejemplo, podemos agregar un método que devuelva una descripción del color.

Ejemplo:

enum Color {
    ROJO("Color del fuego"),
    VERDE("Color de la naturaleza"),
    AZUL("Color del cielo");

    private String descripcion;

    Color(String descripcion) {
        this.descripcion = descripcion;
    }

    public String getDescripcion() {
        return descripcion;
    }
}

public class Main {
    public static void main(String[] args) {
        for (Color color : Color.values()) {
            System.out.println(color + ": " + color.getDescripcion());
        }
    }
}

Beneficios de los Enums

  1. Legibilidad: Mejora la claridad del código al usar nombres significativos.
  2. Seguridad: Reduce errores al restringir los valores posibles.
  3. Mantenibilidad: Facilita la modificación de conjuntos de constantes.

Los enums son una característica poderosa en Java que ayuda a crear código más limpio y menos propenso a errores, especialmente en situaciones donde se manejan un conjunto limitado de valores.