“Conocimientos Programación>Programación Java

Tres beneficios principales de ENUM

2013/8/21
La mayoría de los programadores asignar valores numéricos a cada elemento en una lista, como los días de la semana , para hacer la codificación más rápida y evitar errores tipográficos. Algunos lenguajes de programación proporcionan un tipo de enumerador o enumeración, que le permite definir un conjunto fijo de constantes en un tipo especial . El uso de un constructo enumeración tiene varias ventajas , como una mejor coincidencia de tipo , la capacidad de definir métodos personalizados , el acceso a los miembros de carácter automático admitidas por el compilador, y una mayor legibilidad y mantenimiento del programa en general. Adjuntar Métodos personalizados

Cuando se utiliza el tipo de enumeración , se define una nueva clase. Al igual que con cualquier otra clase, puede incluir métodos y campos personalizados en la clase. Esto le permite proporcionar funcionalidad encapsulada relacionada con el tipo de enumeración . Por ejemplo, el siguiente se define una clase de tipo de enumeración con la latitud y la longitud media de los estados de EE.UU. . Contiene un método personalizado , la distancia, que calcula la distancia entre una latitud y longitud que se pasa como parámetros al método

importación java.lang.Math estática * , . . Enumeración pública del Estado { AK ( 61.3850 , -152.2683 ) , AL ( 32.7990 , -86.8073 ) ... WV ( 38.4680 , -80.9696 ) , WY ( 42.7475 , -107.2085 ) ;

doble privada latitud final; doble longitud final privado ; Estado ( doble latitud, doble longitud) { this.latitude = latitud ; this.longitude = longitud ;} latitud doble privada () { latitud return;} longitud doble privada () { longitud return;} privado static final double R = 6,371 ;
< p > distancia doble (double lat , lng doble ) {/law /esférica de cos cosinesreturn (sin ( latitud ) * sin ( lat ) + cos ( latitud ) * cos ( lat ) + cos ( lng - longitud) ) * R ;} }
Enhanced tipo coincidencia

Debido a que el tipo de enumeración es una clase, que hace cumplir tipo a juego para incluir a juego contra el conjunto de constantes definidas en la enumeración. Esto evita que los errores al garantizar que los parámetros a funciones contendrán siempre un valor en la clase de tipo de enumeración . Por ejemplo, si una función requiere una temporada como parámetro, el parámetro real pasa a la función en tiempo de ejecución se compararán con los cuatro valores permisibles definidos por la enumeración :

public enum { Temporada PRIMAVERA , VERANO, INVIERNO , FALL } ; tiempo public function ( enumeración Temporada ) { ...} ;
Documentación mejorada

La enumeración construcción hace el código más fácil de entender y mantener . Mediante la creación de una construcción enumeración de los miembros con nombres significativos, como la signatura del documento se crea. Por ejemplo , declarar una enumeración llamada " Opción " hace que sea fácil de entender los casos en el estado de "switch" :

enumeración Opción { grabar, descartar CANCELAR } , escoja la opción ; ... switch ( recoger ) {case SAVE: break; caso DESCARTAR : break; caso CANCELAR : break ;}
métodos especiales automáticas

En Java, el compilador inserta automáticamente los métodos especiales en las la clase para que sea fácil de realizar operaciones estándar . Por ejemplo , el compilador inserta automáticamente un método llamado "valores" que devuelve una matriz de valores constantes de enumeración en el orden en que se declaran . Esto hace iteración en la enumeración valora muy fácil, como en el siguiente ejemplo :

de (mes m: Month.values ​​()) { System.out.printf ("% s tiene % d días ", m, m.numberOfDays ()) ;}

Programación Java
Cómo desarrollar aplicaciones Java para Blackberry
¿Qué es la Acción Mapping en Struts
La forma de repetición de un vector en Java
Cómo mantener el mismo mensaje de entrada cuando se pulse Cancelar en Java
Cómo descargar Java Runtime Environment 5.0 en Windows XP
Java HashCode para tipos booleanos
Cómo agregar texto a un JTextField
¿Qué es un widget Java
Conocimientos Informáticos © http://www.ordenador.online