transitório é um modificador de variáveis usado em serialização . No momento da serialização, se não quisermos salvar o valor de uma variável específica em um arquivo, usamos transitório palavra-chave. Quando a JVM aparece transitório palavra-chave, ela ignora o valor original da variável e salva o valor padrão desse tipo de dados variável. transitório a palavra-chave desempenha um papel importante para atender às restrições de segurança. Existem vários exemplos da vida real em que não queremos salvar dados privados em arquivo. Outro uso de transitório A palavra-chave não é serializar a variável cujo valor pode ser calculado/derivado usando outros objetos serializados ou sistema, como idade de uma pessoa, data atual, etc. Praticamente serializamos apenas os campos que representam um estado de instância depois que toda a serialização está prestes a salvar o estado de um objeto em um arquivo. É um bom hábito usar transitório keyword with private confidential fields of a class during serialization. Java // A sample class that uses transient keyword to // skip their serialization. class Test implements Serializable { // Making password transient for security private transient String password; // Making age transient as age is auto- // computable from DOB and current date. transient int age; // serialize other fields private String username email; Date dob; // other code } transitório e estático: Desde estático campos não fazem parte do estado do objeto, não há uso/impacto de usar transitório palavra-chave com variáveis estáticas. No entanto, não há erro de compilação. transitório e final: variáveis finais são serializadas diretamente por seus valores, portanto não há uso/impacto de declarar a variável final como transitório . There is no compile-time error though. Java // Java program to demonstrate transient keyword // Filename Test.java import java.io.*; class Test implements Serializable { // Normal variables int i = 10 j = 20; // Transient variables transient int k = 30; // Use of transient has no impact here transient static int l = 40; transient final int m = 50; public static void main(String[] args) throws Exception { Test input = new Test(); // serialization FileOutputStream fos = new FileOutputStream('abc.txt'); ObjectOutputStream oos = new ObjectOutputStream(fos); oos.writeObject(input); // de-serialization FileInputStream fis = new FileInputStream('abc.txt'); ObjectInputStream ois = new ObjectInputStream(fis); Test output = (Test)ois.readObject(); System.out.println('i = ' + output.i); System.out.println('j = ' + output.j); System.out.println('k = ' + output.k); System.out.println('l = ' + output.l); System.out.println('m = ' + output.m); } } Output : i = 10 j = 20 k = 0 l = 40 m = 50