Buscar

Aula3-Arquivos-Serializacao

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 20 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 20 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 20 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Serialização 
 
 
Prof: Ekler Paulino de Mattos 
ekler.mattos@gmail.com 
CPCX/UFMS 
Arquivos em Java/Serialização 
 
 
 
 
 
 
 
• Quando recuperamos dados em arquivos, não 
sabemos qual é o tipo do dado armazenado. Problema 
para quem irá recuperá-lo, identificar o 
 tipo de dado de cada objeto. 
 
Arquivos em Java/Serialização 
 
 
 
 
• Definição: 
• Um objeto serializado é um objeto representado como uma 
sequência de bytes que inclui os dados do objeto, bem como as 
informações sobre o tipo do objeto e os tipos de dados 
armazenados no objeto. 
 
 
 
• Depois que um objeto é serializado: Ele pode ser gravado em um 
arquivo e/ou trafegado através da rede. 
 
Arquivos em Java/Serialização 
 
 
 
 
• Definição: 
• Desserialização: Transformação de um objeto serializado 
gravado em um arquivo ou lido a partir da rede, em um objeto 
recriado na memória. 
 
• O Java fornece mecanismos que armazenam e recuperam 
objetos inteiros de um arquivo, podendo assim recuperar o 
estado do objeto, como o seu tipo e valor do dado. Tais objetos 
são chamados objetos serializados, ou serializáveis. 
 
• java.io: DataInputStream, DataOutputStream, FileInputStream, 
FileOutputStream, ObjectInputStream, ObjectOutputStream, and 
Serializable. 
 
Serialização 
 
 
 
 
• Trabalhando com ObjectOutputStream e ObjectInputStream 
 
• A mágica da serialização acontece com dois métodos: 
 
– ObjectOutputStream.writeObject(): Utilizado para serializar objetos e 
gravá-los em um fluxo; 
– ObjectInputStream.readObject(): Segundo para ler o fluxo e 
desserializar objetos; 
 
– São consideradas classes alto-nível do pacote: java.io; 
– Significa que serão ”empacotados” em classes de baixo nível, como 
por exemplo, java.io.FileOutputStream and java.io.FileInputStream; 
 
 
 
Serialização/Exemplo1 
 
 
 
 
 
 
Serialização/Exemplo1 
 
 
 
 
 
 
Serialização/Exemplo1 
 
 
 
 
 
 
Serialização/Exemplo1 
 
 
 
 
 
 
Serialização (Regras) 
 
 
 
 
 
• Seja uma classe A serializável possui uma relação de 
dependência com a classe B. 
 
 
 
 
 
 
Serialização (Regras) 
 
 
 
 
 
• No processo de serialização, a classe B deve também ser uma 
classe serializável, ou seja, implementar a interface serializable; 
 
• 
 
 
 
 
 
 
Serialização/ Exemplo 2 
 
 
 
 
 
• 
 
 
 
 
 
 
Serialização/ Exemplo 2 
 
 
 
 
 
• 
 
 
 
 
 
 
Serialização/ Exemplo 2 
 
 
 
 
 
• 
 
 
 
 
 
 
Serialização/ Exemplo 2 
 
 
 
 
 
• 
 
 
 
 
 
 
Serialização/ Exemplo 2 
 
 
 
 
 
• 
 
 
 
 
 
 
Serialização/Exemplo 3 
 
 
 
 
• O que aconteceria se a classe Collar não pudesse ser 
serializada??? 
 
• 
 
 
 
 
 
 
Objetos Transientes/Exemplo 3 
 
 
 
 
• O que aconteceria se a classe Collar não pudesse ser 
serializada??? 
 
• Solução: 
• Qualquer variável de instância que não deve ser serializada deve 
ser declarada como tansiente. Para indicar que não é Serializable 
deve ser ignorada durante o processo de serialização. 
 
• Por padrão todas as variáveis de tipo primitivo são serializáveis; 
 
• Sintaxe: 
– transient private Collar theCollar; 
 
 
 
 
 
 
EC 1 – Exercício computacional 1 
 
 
 
• Utilizando as classes de manipulação de objetos serializáveis, 
crie um programa Java que atenda aos seguintes requisitos: 
 
– Realize o cadastro de disciplinas e alunos; 
– Realize a listagem das disciplinas; 
– Realize a listagem dos alunos; 
– Cadastrar 5 disciplinas em um arquivo; 
 
 
 
 
 
EC 1 – Exercício computacional 1

Outros materiais