Alguem poderia informar qual o significado da palavra reservada transient e quando eu devo usá-la?
[Resolvido] Dúvida com palavra reservada no Java
8 Respostas
O java tem um processo de serialização nativo, onde vc pode salvar em memória secundária um objeto (em arquivo) e, quando recuperar esse objeto ele estará como da primeira vez que foi usado.
Por exemplo:
public class Pessoa implements Serializable{
private int idade;
private String nome;
}
Para serializar uma classe ela precisa implementar a interface Serializable, essa interface não obriga a classe a implementar nenhum método, apenas diz que ela pode ser serializada.
A palavra transient impede que um dos campos da classe seja serializado. Ou seja, sua classe será serializada, mas aquele atributo não.
public class Pessoa implements Serializable{
private transient int idade; //idade não será serializada
private String nome;
}
ok?
Quando vc marca uma variável de instância de uma classe como transient, quer dizer que se você serializar um objeto dessa classe, os atributos marcados como transient não serão serializados. Então no processo de deserialização, o objeto gerado não conterá o valor para aquele atributo. Se não me falha a memória, os campos transientes serão inicializados com o valor padrão do tipo.
[]'s
Esta palavra é utilizada para indicar atributos que não serão persistidos. Utiliza-se quando se está utilizando serialização, ao extender uma classe de Serializable.
A indicação
transiente String aString;
Indica que aString não será serializada com o valor do estado do objeto.
4 respostas em exatamente 2:30 min :shock:
As três primeiras foram praticamente ao mesmo tempo. Quando entrei no tópico ainda não tinha nenhuma 
[]'s
Obrigado a todos pelas respostas. Entendi tudo 
eu até pensei q tinha respondido no tópico errado…rsrs