Sei sulla pagina 1di 3

L3

Crear y usar tipos enumerados

Una enumeracin en java es una manera de agrupar un conjunto de constantes que tengan una relacin entre s. Los tipos enumerados sirven para predefinir el contenido de una variable con unos valores restringidos. Las enumeraciones tienen una serie de caractersticas: Se utiliza la palabra reservada enum en vez de class. Una enumeracin extiende Enum implcitamente (Java.Lang.enum). Una enumeracin puede ser declarada fuera o dentro de una clase, pero no en un mtodo. La sintaxis en Java es: enum identificador{ //valores de la enumeracin }

Una vez definida la clase enumeracin, se deben indicar los valores que puede tomar. Como mnimo tendr un identificador que no podr contener espacios y que en caso de no tener ningn otro parmetro ser el valor que tome el valor en la realidad enum identificador{ V1,V2,V3,V4; } Un ejemplo en cdigo Java de este tipo de enumeracin es :
public enum Enumeraciones { L , M , X , J , V, S, D; }

10 UNIDAD DIDCTICA 7. FUNCIONES DE CLASE AVANZADAS

Y su uso en una clase sera: NombreClase.valorEnumeracion


public class EnumeracionesPrincipal { public static void main (String args[]){ System.out.println("El valor de la enumeracin es:" + Enumeraciones.D); } }

Como no tiene ningn otro parmetro toma el valor por defecto del propio identificador. Si queremos aadir parmetros la sintaxis sera: enum identificador{ V1(parametro1, parametro2), V2(parametro1, parametro2), V3(parametro1, parametro2); } Y en funcin del nmero de parmetros debe existir como mnimo un constructor que admita el nmero mximo de parmetros. Un ejemplo en cdigo Java es:
public enum Enumeraciones { L M X J V S D // private String valor; private int orden; public String getValor(){ return valor; } public int getOrden(){ return orden; } Enumeraciones( int orden,String valor){ this.valor = valor; this.orden = orden; } Enumeraciones(String valor){ this.valor = valor; } }
11 UNIDAD DIDCTICA 7. FUNCIONES DE CLASE AVANZADAS

(1,"Lunes") , (2,"Martes"), (3,"Miercoles"), (4,"Jueves"), (5,"Viernes"), (6,"Sbado"), (7,"Domingo");

Hemos aadido a cada valor 2 parmetros: L(1,Lunes) Tenemos un identificador, un campo orden y un campo valor completo para cada valor de enumeracin. Para esto hemos tenido que crear variables del mismo tipo y sus constructores para tener acceso. Con este tipo de enumeraciones conseguimos una mayor flexibilidad y que una constante pueda tomar mltiples valores en funcin del uso que sea necesario.
public class EnumeracionesPrincipal { public static void main (String args[]){ System.out.println("El identificador de la enumeracin es:" + Enumeraciones.D); System.out.println("El orden de la enumeracin es:" + Enumeraciones.D.getOrden()); System.out.println("El valor Real de la enumeracin es:" + Enumeraciones.D.getValor()); } }

12 UNIDAD DIDCTICA 7. FUNCIONES DE CLASE AVANZADAS

Potrebbero piacerti anche