通过复制构造函数复制对象是否获得与原始对象相同的实例变量?

具有对象实例变量的对象的副本是否与原始对象获得相同的实例变量? 如果是这样,我想知道原始和复制对象是否引用相同的实例变量。

与C ++不同,Java不会自动提供复制构造函数。 因此,对于复制构造函数的行为没有任何一般性的答案,因为Java对它们的行为没有任何限制。

然而,每个对象,无论如何初始化,都有自己的实例变量。 这些不与任何其他对象共享; 它们可以与另一个对象“相同”,只有在保持相同值的意义上。 诸如int类的基本类型的变量完全相互独立。 引用类型的任何两个变量都可以包含引用同一对象的值,但前提是它们的声明类型都与该对象的类兼容。 复制构造函数可以轻松地创建这样的效果,但绝不需要这样做。