gpt4 book ai didi

java - 序列化具有不可序列化父类的对象

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:07:29 27 4
gpt4 key购买 nike

下面的代码是如何工作的?

     class A {
int a = 10;
}


class B extends A implements Serializable{

}



public class Test {
public static void main(String[] args){
B obj = new B();
obj.a = 25;


//Code to serialize object B (B b= new B()),
// deserialize it and print the value of 'a'.
}
}

即使我在代码中更改了“a”的值,代码仍会打印 10。

对这种行为有什么解释吗?

最佳答案

a 的默认值为 10 - 创建对象时将设置为 10。如果你想有一个真实的测试,在实例化后设置一个不同的值,然后序列化它。

至于你的更新——如果一个类不可序列化,它的字段就不会被序列化和反序列化。只有可序列化子类的字段。

关于java - 序列化具有不可序列化父类的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6649348/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com