gpt4 book ai didi

java - 序列化/反序列化如何破坏不变性?

转载 作者:搜寻专家 更新时间:2023-10-30 19:55:04 25 4
gpt4 key购买 nike

我在一次采访中被问到这个问题。面试官想知道如何使对象不可变。然后他问如果我序列化这个对象会怎样——它会破坏不变性吗?如果是,我该如何预防?任何人都可以帮助我理解这一点吗?

最佳答案

不可变对象(immutable对象)是指一旦创建就无法更改的对象。您可以使用 private 访问修饰符和 final 关键字来创建这样的对象。

如果一个不可变对象(immutable对象)被序列化,它的原始字节可以被修改,以便在反序列化时对象不再相同。

这无法完全避免。不过,加密、校验和和 CRC 将有助于防止这种情况发生。

关于java - 序列化/反序列化如何破坏不变性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17603412/

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