栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Gson类型适配器与自定义脱盐器

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Gson类型适配器与自定义脱盐器

你们两个都可以。您选择哪一个真正取决于对性能的潜在影响,以及愿意编写多少代码。

解串器更昂贵。这是因为反序列化器的输入是一棵json树,GSon必须先创建一个与您的类匹配的属性的完整JsonElement子树,然后才能将其传递给反序列化器。如果您的课程有很多嵌套,那么成本会增加。对于普通物体,它可以忽略不计。

似乎您将基于

type
将包含在目标对象中的属性的值来知道要创建哪个类。您的解串器将需要

  • 查看传递的
    JsonElement
    对象,读取
    type
    属性,确定类型
  • context.deserialize()
    用类和传递给您的相同元素进行调用
  • 如果类型丢失或无效,则引发错误

您的类型适配器必须更复杂。类型适配器的输入是流,而不是元素/子树。您可以完全从流中加载下一个值,对其进行解析,然后完全执行解串器的操作,这没有任何意义,您可以使用解串器接口。另外,您可以读取流,查看有哪些属性,将它们保存到局部变量中,直到到达

type
属性(无法预测其位置),然后完成读取其余属性,并创建最终的
Gold
/
Silver
基于类型的对象,并读取和保存所有属性。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/419371.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号