Object类如何实现clone()方法

Vai*_*hek 9 java clone class core object

在一本关于Core Java的书中,我发现了这个摘录:

想想Object类可以实现克隆的方式.它根本不了解对象,因此它只能进行逐个字段的复制.如果对象中的所有数据字段都是数字或其他基本类型,则复制字段就可以了.但是,如果对象包含对子对象的引用,则复制该字段会为您提供对子对象的另一个引用,因此原始对象和克隆对象仍然共享一些信息.

读完之后我很想知道 How is the clone method originally implemented in Object Class?

让我困扰的是:如何在一个方法Object类的子类对象的领域克隆做出场,当它并不了解这门课吗?

Tho*_*mas 12

实际上,clone()是在本机代码中实现的,所以我假设它只是在不知道内容的情况下进行内存复制(复制所有字节).

除此之外,还有Reflection API可以获得关于类的知识(然而,它会更慢).