Hoy me he encontrado con que no recordaba exactamente para que servia el parámetro serialVersionUID, afortunadamente no estamos en los 80 que o lo recordabas o estabas perdido.
private static final long serialVersionUID = 1L;
Básicamente esta variable sirve para decirle a nuestro proyecto en que versión se encuentra en estos momentos y esto se debe a que todo objeto que sea susceptible a implementar un "Serializable" y se ejecute desde un entorno como Swing o Applet puede sufrir modificaciones. Pongamos que hemos creado un Applet que nos ayuda a cargar y visualizar un fichero, el programa serializara una serie de objetos al cerrarse y los lee en la siguiente ejecución para mantener los valores que tenia antes. Cuando evoluciones tu programa si no modificas el serialVersionUID e intentas leer los objetos que fueron serializados te los devolverá como erróneos, eso pasa por que los objetos locales no saben que el programa a sido modificado.
De todas maneras esta información esta extraída de: http://www.lawebdelprogramador.com creo que no necesita más presentación y de http://chuwiki.chuidiang.org que es una web que no conocía pero que esta muy bien, es más, las practicas que estoy haciendo proceden de su WIKI, la cual aconsejo leer. Se que mi descripción no es muy clara pero en todo caso en ambas paginas web se pueden encontrar sendos resultados que pueden facilita que se entiendan estas pequeñas cosas.
Fe de erratas:
Por lo visto, tal y como lo describo parece que el serialVersionUID tenga que ser el mismo que la versión del programa completo, pero no es así, el serialVersionUID hace referencia al .class generado a partir del Java de manera que podemos tener más de un serialVersionUID en todo el programa dependiendo de que se haya modificado.
Fe de erratas:
Por lo visto, tal y como lo describo parece que el serialVersionUID tenga que ser el mismo que la versión del programa completo, pero no es así, el serialVersionUID hace referencia al .class generado a partir del Java de manera que podemos tener más de un serialVersionUID en todo el programa dependiendo de que se haya modificado.
0 comentarios: (+add yours?)
Publicar un comentario