Difference between revisions of "Tornar uma propriedade não serializável no Java"

From Basef
Jump to: navigation, search
(Criou página com 'Não é possível serializar um objeto de uma classe que possui propriedade cuja instância não é serializavel (que não implementa Serializable). Neste caso, uma exceção...')
 
 
Line 25: Line 25:
 
</source>
 
</source>
  
[[Category:Java]
+
[[Category:Java]]

Latest revision as of 18:48, 1 May 2015

Não é possível serializar um objeto de uma classe que possui propriedade cuja instância não é serializavel (que não implementa Serializable). Neste caso, uma exceção em tempo de execução ocorrerá: java.io.NotSerializableException

O modificador 'transient' pode ser usado nestes casos:

package javaapplication1;
 
import java.io.*;
public class JavaApplication1 implements Serializable {
    public transient Test test = new Test();
    public static void main(String [] args) {
        JavaApplication1 f = new JavaApplication1();
        try {
            FileOutputStream fs = new FileOutputStream("Test123.tmp");
            ObjectOutputStream os = new ObjectOutputStream(fs);
            os.writeObject(f); os.close();
        } catch (Exception ex) { 
            ex.printStackTrace(); 
        }
    } 
}
 
class Test { }