Transitorio en Java: ¿Qué, por qué y cómo funciona?



Transitorio en Java es una palabra clave que se utiliza en la serialización. Se utiliza cuando no desea guardar el valor de una variable en un archivo.

Transitorio en Java se usa para marcar la variable miembro para que no se serialice cuando persiste en flujos de bytes. Esta palabra clave juega un papel importante para cumplir con las restricciones de seguridad en . Ignora el valor original de un variable y guarda el valor predeterminado de esa variable .

Los siguientes son los temas que se discutirán en este artículo:





¡Empecemos!

¿Qué es la palabra clave transitoria en Java?

Transient es básicamente un modificador de variables que se usa para la serialización. Ahora bien, ¿qué es la serialización? Serialización en Java es un mecanismo que se utiliza para convertir el estado de un objeto en un flujo de bytes. En el momento de la serialización, si no desea guardar el valor de una variable en particular en un archivo, utilice la palabra clave transitoria.



Sintaxis :

transitorio privado

o

privado transitorio

En caso de que defina algún miembro de datos como transitorio, no se serializará. Esto se debe a que cada campo marcado como transitorio no se serializará. Puede utilizar esta palabra clave transitoria para indicar a la máquina virtual Java (JVM) que la variable transitoria no forma parte del estado persistente de un objeto.



Escribamos un ejemplo muy básico para entender sobre Transient en Java.

class Demo implements Serializable {// Hacer transitorios humanos privados transitorios String humanos transitorios int age // serializar otros campos privados String nombre, dirección Fecha dob // resto del código}

Aquí, creé una clase llamada Demo que implementa Serializable. El miembro de datos de edad de la clase Demo se declara como transitorio, su valor no se serializará. Pero si deserializa el objeto, obtendrá el valor predeterminado para una variable transitoria.

Se puede utilizar un algoritmo de clasificación para organizar un conjunto de ________ en orden de ________.

¿Por qué se usa el modificador Transient?

Transitorio en Java se usa para indicar que un campo no debe ser parte del proceso de serialización.

El modificador Transient se puede aplicar a las variables miembro de una clase para desactivar la serialización en estas variables miembro. Cada campo marcado como transitorio no se serializará. Puede utilizar esta palabra clave transitoria para indicar al Máquina virtual de Java que la variable transitoria no es parte del estado persistente de un objeto.

Es posible que tenga esta pregunta en su cabeza. ¿Cuándo usar este transitorio en Java?

La respuesta a esto sería:

  1. Puede usar esta palabra clave Transitoria cuando tiene campos que se derivan / calculan de otros campos dentro de la instancia de una clase.
  2. Úselo con campos que no están marcados como 'serializables' dentro de JDK o código de aplicación. Esto se debe a que las clases que no implementan la interfaz serializable se referencian dentro de cualquier clase serializable y no se pueden serializar y generarán la excepción 'java.io.NotSerializableException'. Tenga en cuenta que estas referencias no serializables deben marcarse como 'transitorias' antes serializando la clase principal.

¿Cómo utilizar Transient con la palabra clave final?

Transient en Java se puede utilizar con el palabra clave final porque se comporta de manera diferente en diferentes situaciones, lo que generalmente no es el caso con otros palabras clave en Java .

Eche un vistazo a este ejemplo.

private String firstName private String lastName // campo final 1 público final transitorio String pass = 'contraseña' // campo final 2 público final transitorio Lock lock = Lock.getLock ('demo')

Ahora, cuando vuelva a ejecutar la serialización (escritura / lectura), obtendrá este resultado:

Kenny
Fuerte
contraseña
nulo

Esto se debe a que hemos marcado el 'paso' como transitorio y aún así ese campo se serializó. Para una declaración similar, el bloqueo no se serializó. La razón es que, siempre que cualquier campo final se evalúe como una expresión constante,JVM lo serializa ignorando la presencia de una palabra clave transitoria.

Diferencia entre transitorio y volátil

Esta es una pregunta importante que se hace durante un . ¿Cuál es la diferencia entre palabras clave transitorias y volátiles en Java?

Volátil y Transient son dos palabras clave completamente diferentes que se utilizan en . Se utiliza una palabra clave transitoria durante la serialización del objeto Java. Volátil está relacionado con la visibilidad de variables modificadas por múltiples hilos.

La única similitud entre estas palabras clave es que son palabras clave menos utilizadas o poco comunes y no tan populares como públicas, estáticas o finales.

Esto nos lleva al final de este artículo donde hemos aprendido sobre Transient en Java. Espero que tengas claro todo lo que se ha compartido contigo en este tutorial.

Si encuentra relevante este artículo sobre 'Transitorios en Java', consulte el una empresa de aprendizaje en línea de confianza con una red de más de 250.000 alumnos satisfechos repartidos por todo el mundo.

Estamos aquí para ayudarlo en cada paso de su viaje, para que, además de estas preguntas de la entrevista de Java, se convierta en un plan de estudios diseñado para estudiantes y profesionales que desean ser desarrolladores de Java. El curso está diseñado para darle una ventaja en la programación de Java y capacitarlo para los conceptos básicos y avanzados de Java junto con varios marcos de Java como Hibernate y Spring.

Si tiene alguna pregunta, no dude en hacer todas sus preguntas en la sección de comentarios de 'Transitorio en Java' y nuestro equipo estará encantado de responder.