在库的描述中,可以读取它使用代码生成。再深入一点,您可以读到以下内容:
在使用默认字段序列化策略时,请注意不要使用私有字段,因为它会因反射而导致性能损失。
现在这让我困惑了!它是否使用反射或代码生成。如果它确实使用反射,我就不认为这样的库有什么意义,因为Parcelable的全部目的是避免使用反射的序列化?
发布于 2017-06-02 16:39:31
Parceler为您生成代码的Parcelable包装器,这允许您避免编写样板。其中一个优点是静态编译代码的高性能。在某些情况下,就像访问私有字段、方法或构造函数一样,Parceler不得不使用反射,正如引用的说明所提到的那样,反射将导致发出警告。
因此,简而言之,Parceler主要使用代码生成来处理Parcelable样板的编写,但在某些情况下会采用反射。
https://stackoverflow.com/questions/44301209
复制相似问题