实例化其无参数构造函数不可用且参数未知的类

时间:2014-09-04 12:44:39

标签: java reflection

我使用反射来创建对象的深层克隆。在将每个字段分配给新对象之前,我创建了一个原始类型的对象:

Object cloned = original.getInstance();

当原始对象没有无参数构造函数时,此操作失败。

我知道这可以通过从original对象获取构造函数列表然后使用它来创建实例来完成,但这里有一些问题:

  1. 如果有多个构造函数,我怎么知道调用哪个构造函数来创建原始对象?
  2. 由于新对象必须是克隆,我如何获取必须传递给克隆的值?我必须传递传递给原始对象的相同值 - 但我该如何获得它?

1 个答案:

答案 0 :(得分:0)

使用Object.clone()功能。它是为这样的东西而设计的。