¿Por qué el constructor enum es privado?
¿Por qué el constructor enum es privado?

Video: ¿Por qué el constructor enum es privado?

Video: ¿Por qué el constructor enum es privado?
Video: ENUMS en JAVA ☕ ¡Con atributos y métodos! 😮 2024, Mayo
Anonim

En realidad, no puedes tener un público constructor de enumeración . Necesitas esto constructor ser privado , porque enumeraciones definir un conjunto finito de valores (por ejemplo, EN_US, EN_UK, FR_FR, FR_BE). Si el constructor si las personas públicas podrían potencialmente crear más valores (por ejemplo, valores no válidos / no declarados como XX_KK, etc.).

Con respecto a esto, ¿puede la enumeración tener un constructor?

Esto es porque enumeración es Java contiene valores constantes fijos. Por lo tanto, no tiene sentido tener públicos o protegidos constructor ya que no puede crear una instancia de enumeración . Además, tenga en cuenta que internamente enumeración se convierte a clase como se muestra a continuación. Como nosotros pueden no crear enumeración objetos explícitamente, por lo tanto, pueden no invoco constructor de enumeración directamente.

Además, ¿cuál es la diferencia entre un constructor de enumeración y un constructor de clase regular? Para responder a la pregunta: esencialmente, no hay diferencia entre los dos enfoques. Sin embargo, enumeración construct le proporciona algunos métodos de soporte adicionales como values (), valueOf (), etc.que tendrías que escribir por tu cuenta con el clase -con-privado- constructor Acercarse.

Además de esto, ¿cuál es el propósito de las enumeraciones?

los enumeración se utiliza para declarar una lista de constantes enteras con nombre. Puede definirse utilizando el enumeración palabra clave directamente dentro de un espacio de nombres, clase o estructura. los enumeración se usa para dar un nombre a cada constante para que el entero constante pueda ser referido usando su nombre. Ejemplo: enumeración.

¿Se pueden crear instancias de enumeraciones?

Enumeraciones no admite constructores públicos y, por lo tanto, no se puede instanciado . Enumeraciones son para cuando tiene un conjunto fijo de constantes relacionadas. Exactamente una instancia voluntad ser creado para cada enumeración constante.

Recomendado: