Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Como funciona a serialização?

Olá, entendi o processo para fazer a serialização, porém fiquei com duvidas a respeito da interface Serializable, por ser uma interface ela não pode usar de métodos "implementados na própria interface, certo? Logo devemos assinar o contrato e implementar algo, para que possamos usufruir de suas funcionalidades, porém não o fazemos, olhei dentro da própria classe e o método realmente não pede nada, como o java faz isso acontecer?

OBS: espero que não tenha ficado muito confuso, kkk

2 respostas

A serialização significa salvar o estado atual dos objetos em arquivos em formato binário para o seu computador, sendo assim esse estado poderá ser recuperado posteriormente recriando o objeto em memória assim como ele estava no momento da sua serialização.

Entendi a sua dúvida, dá uma olhada nesse artigo pra compreender melhor como funciona essa interface http://luizricardo.org/2014/10/nuances-sobre-serializacao-de-objetos-com-heranca-em-java/

solução!

A interface Serializable é o que chamamos de interface de marcação e é usada somente para sinalizar à JVM que todos os campos da classe marcada deverão ser escritos num stream.

Com uma interface de marcação podemos "carimbar" uma classe e usar esse tipo para verificações. Assim, suponha que eu tenha essa interface de marcação chamada Tag e uma classe que use ela:

public interface Tag {
}

public class Marcada implements Tag {
}

Agora, podemos usar essa marcação para algo:

public void teste() {
    Marcada m = new Marcada();
    if (m instanceof Tag) {
        System.out.println("Classe possui a tag");
    }
}

Essa estratégia foi deixando de ser usada com a criação das annotations em Java, que permitem marcar métodos, argumentos, além de classes.