gpt4 book ai didi

java - 克隆和序列化与使用 "new"和反射有何不同?

转载 作者:行者123 更新时间:2023-12-02 07:06:55 25 4
gpt4 key购买 nike

当我读到“我们可以用多少种方法在 java 中创建对象”时。

我找到了四种方式:

  1. 使用 new 运算符创建对象。
  2. 克隆
  3. 序列化
  4. 反射(reflection)。

有了new和reflection,这两种方法我都可以。

我的问题是:

为什么人们认为克隆和序列化是创建对象的不同方式?

最佳答案

这里非常重要的一点是,在对象反序列化过程中没有构造函数——这就是为什么它是创建对象的独特方式的原因。克隆也是如此——Object.clone 方法通过 JVM 魔法创建一个新对象,同样不涉及任何构造函数。事实上,一方面这两种方式与另一方面的 new 和反射之间存在更大的差异,因为反射只是调用涉及特定构造函数的普通对象实例化的一种稍微不同的方式.

关于java - 克隆和序列化与使用 "new"和反射有何不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10540647/

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