Serialização de Objetos - Java

Objetos java não são serializáveis por padrão. A serialização é a conversão de um objeto java em uma representação de bit-blob (Binary Large Object ou, traduzindo, grande objeto binário). Em outras literaturas também pode ser definido como o processo de conversão de um objeto em um fluxo de bytes 

O bit-blob é um campo no qual pode ter o armazenamento máximo de 255 caracteres. Normalmente é utilizado para armazenar imagem, áudio ou objetos multimédia.

É possível enviar bit-blobs para qualquer lugar, como por exemplo, utilizar a serialização de um objeto como um formato de arquivo objeto e gravá-los em seu HD.

Para que seu objeto seja serializable, basta que sua classe implemente Serializable e importe a biblioteca java.lang.Serializable, conforme exemplo abaixo:


public class Usuario implements Serializable{}


Com isso, o processo de serialização fica desta forma:

Por Ed Roman, Scott W. Ambler, Tyler Jewell
                    

Para se evitar a serialização de um objeto, a estrutura do mesmo deve ser definida como transient  e ele não será serializado.

exemplo: 

transient int id;


De modo geral, a serialização é muito útil no envio de objetos pela rede, ao salvar dados, etc. Além disso, é possível obter um retorno do estado em que o objeto foi gravado, fato este, que não é possível em um objeto não transient, por exemplo.


Referências:


Ed Roman, Scott W. Ambler, Tyler Jewel

https://www.educative.io/edpresso/what-is-the-transient-keyword-in-java?aid=5082902844932096&utm_source=google&utm_medium=cpc&utm_campaign=edpresso-dynamic&gclid=CjwKCAiAgJWABhArEiwAmNVTB5RXlOIqLy_mkgVjG-KbbFNGaJBCHbuFT2l1_NqY651uvgM_LwcQvhoCxicQAvD_BwE

Comentários

Postagens mais visitadas