Boa tarde
De acordo com o que foi demostrando na aula, o código abaixo deveria gerar uma InvalidClassException, mas está funcionando perfeitamente. Por gentileza, vocês poderiam me explicar o por quê?
package br.com.alura.java.io.aula6;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
public class SerializacaoDeQualquerObjeto {
public static void main(String[] args) throws IOException, ClassNotFoundException {
// Cliente cliente1 = new Cliente();
//
// cliente1.setNome("Cidadão Comum");
// cliente1.setProfissao("Dev");
// cliente1.setCpf("12345678978");
//
// ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("cliente.bin"));
// oos.writeObject(cliente1);
// oos.close();
ObjectInputStream ois = new ObjectInputStream(new FileInputStream("cliente.bin"));
Cliente cliente2 = (Cliente) ois.readObject();
ois.close();
System.out.println(cliente2.getNome());
}
}
package br.com.alura.java.io.aula6;
import java.io.Serializable;
public class Cliente implements Serializable{
private static final long serialVersionUID = 1L;
private String nome;
private String cpf;
private String profissao;
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getCpf() {
return cpf;
}
public void setCpf(String cpf) {
this.cpf = cpf;
}
public String getProfissao() {
return profissao;
}
public void setProfissao(String profissao) {
this.profissao = profissao;
}
}