transient

2218 vistas

La palabra clave transient está relacionado con la serialización de las clases Java. Permite impedir la serialización de ciertas variables de una clase.



java
  1. // clase que vamos a serializar
  2. class Writeable implements java.io.Serializable {
  3.         // entero transient
  4.         public transient int var1 = 4;
  5.         // entero normal
  6.         public int var2 = 19;
  7. }



Si serializamos una instancia de esta clase, la variable 'var1' no se guardará. En el momeno de la deserialización tomará el valor de 0 aunque tenga valor por defecto 4. La asignación de un valor por defecto se hace en el momento de la instanciación del objeto.

Esta palabra clave tiene sentido en aplicaciones en las que algún dato importante no tiene que aparecer en ningún fichero (un password por ejemplo).