import java.io.*;
public class TestSer {
public static void main(String[] args) {
SpecialSerial s = new SpecialSerial() ;
try {
ObjectOutputStream os = new ObjectOutputStream(
new FileOutputStream("myFile"));
os.writeObject(s); os. close();
System.out.print( + + s.z + " ");
ObjectlnputStream is = new ObjectlnputStream(
new FileInputStream("myFile"));
SpecialSerial s2 = (SpecialSerial)is.readObject();
is.close();
System.out.println(s2.y + " " + s2.z);
} catch (Exception x) {System.out.println("exc"); }
}
}
class SpecialSerial implements Serializable {
transient int y = 7;
static int z = 9;
}
O livro afirma que a saída é: "10 0 10". Minha dúvida é em relação ao fato de que membros static e transient de uma classe não são "serializados". Sendo assim, de onde surgiu o segundo "10" da saída? É impressão ou essa resposta está errada?
