加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 通过超类序列化/反序列化

发布时间:2020-12-14 19:17:07 所属栏目:Java 来源:网络整理
导读:假设我有1个基类和派生类. 派生类具有基类不具有的额外字段. 然后我实例化派生类并将其分配给基类的定义. 当我通过基类序列化和反序列化对象时会发生什么. 例如: Class TypeA{ int var1;}Class TypeB extends class TypeA{ int var2;}Class X{ public TypeA

假设我有1个基类和派生类.
派生类具有基类不具有的额外字段.

然后我实例化派生类并将其分配给基类的定义.
当我通过基类序列化和反序列化对象时会发生什么.

例如:

Class TypeA{
   int var1;
}

Class TypeB extends class TypeA{
   int var2;
}

Class X{
  public TypeA obj = new TypeB();
}

如果我现在序列化“obj”会包含var2吗?

最佳答案
是的,序列化不依赖于引用的类型(实际上是obj,我的意思是引用),而是依赖于被引用对象的类型/类,它仍然是TypeB.如果调用obj.getClass(),它将返回TypeB.class,这也是序列化将看到的内容.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读