Foros del Web » Programación para mayores de 30 ;) » Java »

Para qué me sirven los enums?

Estas en el tema de Para qué me sirven los enums? en el foro de Java en Foros del Web. Bueno a mi me han pasado de noche varios tópicos de Java, y uno de ellos son los enums, básicamente veo que lo usan en ...
  #1 (permalink)  
Antiguo 25/05/2012, 18:16
Avatar de zero0097  
Fecha de Ingreso: abril-2010
Ubicación: México
Mensajes: 481
Antigüedad: 14 años
Puntos: 69
Para qué me sirven los enums?

Bueno a mi me han pasado de noche varios tópicos de Java, y uno de ellos son los enums, básicamente veo que lo usan en clasificaciones o en uno de constantes.... pero en si que es un enum?

A lo que yo veo es como una clase no? (no de digo que lo sea), tiene sus atributos, puede tener métodos, puede implementar interfaces.... entonces básicamente para que fueron inventadas? En que momento dentro de un proyecto es conveniente usarlos? En qué situaciones beneficia más tener un enum que una clase con mismos atributos y métodos?

Espero y me puedan aclarar estas preguntas sobre los enums, que aún que veo es un tópico sencillo (y hasta básico tal vez) yo aún tengo mis lagunas al respecto. Cuál es su principal utilidad y en programas de "la vida real" cómo lo podría usar?

Cuál e sla diferencia entre el "enum" (palabra reservada) y el "Enum" (clase)....es lo mismo que "int" con "Integer" y los demás tipos de datos?

Saludos!
__________________
De nada, hay te encargo +1...
  #2 (permalink)  
Antiguo 25/05/2012, 21:54
 
Fecha de Ingreso: octubre-2011
Mensajes: 153
Antigüedad: 12 años, 6 meses
Puntos: 7
Respuesta: Para qué me sirven los enums?

son constantes que funcionan como arreglo pero sin serlo, es decir con enumeracion en otras palabras sirve para restringir el contenido de una variable a una serie de valores predefinidos.
__________________
Mi mail: [email protected]
  #3 (permalink)  
Antiguo 26/05/2012, 07:15
 
Fecha de Ingreso: abril-2011
Mensajes: 1.342
Antigüedad: 13 años
Puntos: 344
Respuesta: Para qué me sirven los enums?

Buenas,

Si lo piensas bien, , una enumeración en Java no es más que una clase con atributos estáticos y finales (los valores enumerados) que son objetos del mismo tipo que el enumerado.

La clase abstracta Enum, es la clase de la cual heredan todas las enumeraciones (cuando pones la palabra reservada enum, estás heredando implícitamente de Enum).

El uso de los enumerados depende de cada uno, porque como has dicho se podría utilizar una clase para hacerlo.

Te dejo este enlace para que veas muchas de las cosas que se pueden hacer con un enumerado: http://magmax9.blogspot.com.es/2011/...numerados.html

Como vas a ver, es en realidad una clase y, por tanto, tiene toda la funcionalidad de esta.

Saludos.
  #4 (permalink)  
Antiguo 28/05/2012, 03:55
Avatar de FiruzzZ  
Fecha de Ingreso: diciembre-2007
Ubicación: en casa
Mensajes: 470
Antigüedad: 16 años, 4 meses
Puntos: 41
Respuesta: Para qué me sirven los enums?

Nadie te lo va explicar mejor que Oracle y si doc oficial.
http://docs.oracle.com/javase/1.5.0/...age/enums.html
http://docs.oracle.com/javase/tutori...vaOO/enum.html

PD: el link que dejó alex es bastante pobre, omite conceptos y comparaciones fundamentales en la cual recae la duda de muchos ( Enums == constantes ).


Los he usando un poco con JPA 2.0 (pero no es su fuerte), pero para delimitar valor y hacer el código mucho mas legible e intuitivo no hay duda.
__________________
BadProgrammerException!
  #5 (permalink)  
Antiguo 04/06/2012, 08:45
Avatar de zero0097  
Fecha de Ingreso: abril-2010
Ubicación: México
Mensajes: 481
Antigüedad: 14 años
Puntos: 69
Respuesta: Para qué me sirven los enums?

Mmm...pues hay mas o menos jeje, en si son para declarar constantes, y lo que tenga un enum son eso, no son ints, no son strings son valores del enum, ok..... ahora en si se les puede definir un constructor, pero para que si los valores que debe tener son constantes, no se aun me quedan lagunillas (a parte de que mi ingles no es de lo mejor xD)....

En fin en cuanto a un enum sencillo con sus valores, me ha quedado muy claro, pero ya cuando le meten constructores o métodos se me nubla un poco....
__________________
De nada, hay te encargo +1...

Etiquetas: clase, programa
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:12.