java.lang.Object
cn.wjybxx.dsoncodec.codecs.ArrayCodec<T>
- 所有已实现的接口:
DsonCodec<T[]>
该实例仅支持引用类型数组,
基础类型数组走定制Codec实现。
- 作者:
- wjybxx date - 2024/9/25
-
构造器概要
构造器 -
方法概要
修饰符和类型方法说明cn.wjybxx.base.TypeInfo获取负责编解码的类对象 如果可以,在数据兼容的情况下,尽量将泛型'T'声明为抽象类或接口,然后通过动态的TypeInfo来绑定编解码类型。boolean当前对象是否按照数组格式编码 1.默认情况下,Map是被看做普通的数组的 2.该属性只有DsonCodec.autoStartEnd()为true的时候有效。T[]readObject(DsonObjectReader reader, Supplier<? extends T[]> factory) 从输入流中解析指定对象。voidwriteObject(DsonObjectWriter writer, T[] inst, cn.wjybxx.base.TypeInfo declaredType, ObjectStyle style) 将对象写入输出流。从类继承的方法 java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait从接口继承的方法 cn.wjybxx.dsoncodec.DsonCodec
autoStartEnd
-
构造器详细资料
-
ArrayCodec
public ArrayCodec(cn.wjybxx.base.TypeInfo encoderType)
-
-
方法详细资料
-
getEncoderType
@Nonnull public cn.wjybxx.base.TypeInfo getEncoderType()从接口复制的说明:DsonCodec获取负责编解码的类对象 如果可以,在数据兼容的情况下,尽量将泛型'T'声明为抽象类或接口,然后通过动态的TypeInfo来绑定编解码类型。 EncoderType必须存在对应的TypeMeta- 指定者:
getEncoderType在接口中DsonCodec<T>
-
isWriteAsArray
public boolean isWriteAsArray()从接口复制的说明:DsonCodec当前对象是否按照数组格式编码 1.默认情况下,Map是被看做普通的数组的 2.该属性只有DsonCodec.autoStartEnd()为true的时候有效。 3.实现类无需处理缓存,该方法只会调用一次.- 指定者:
isWriteAsArray在接口中DsonCodec<T>
-
writeObject
public void writeObject(DsonObjectWriter writer, T[] inst, cn.wjybxx.base.TypeInfo declaredType, ObjectStyle style) 从接口复制的说明:DsonCodec将对象写入输出流。 将对象及其所有超类定义的所有要序列化的字段写入输出流。注意: 1.name在外部已写入,因此基础类型写入value时name传null。 2.declaredType只影响外层类型信息是否写入,而不应向下传递。以字典为例,KV是否需要写入类型信息,取决于encoderType中的信息。
- 指定者:
writeObject在接口中DsonCodec<T>- 参数:
declaredType- 声明类型,用于判断是否写入类型信息style- 外部期望的输出格式
-
readObject
从接口复制的说明:DsonCodec从输入流中解析指定对象。 它应该创建对象,并反序列化该类及其所有超类定义的所有要序列化的字段。注意:name在外部已读取,因此基础类型读取value时name传null。
- 指定者:
readObject在接口中DsonCodec<T>- 参数:
factory- 实例工厂
-