我需要使用实现cloneable
创建一个泛型类,为了实现这一点,我需要做一个类的克隆方法和另一个获取此方法的方法。
老师在房间里传递了它,但没有工作,并给出了方法错误。我该怎么办?
public class Deposito <X> implements Cloneable {
public Object clone () {
Deposito ret=null;
try {
ret = new Deposito (this);
}
catch (Exception erro) {
}
return ret;
}
private X meuCloneDeX (X x) {
X ret = null;
try {
Class<?> classe = x.getClass();
Class<?>[] tipoDoParametroFormal = null;
Method metodo = classe.getMethod ("clone", tipoDoParametroFormal);
Object[] parametroReal = null;// pq clone tem 0 parametros
ret = ((X)metodo.invoke (x, parametroReal));
}
catch (NoSuchMethodException erro)
{}
catch (InvocationTargetException erro)
{}
catch (IllegalAccessException erro)
{}
return ret;
}
}
错误 - 找不到符号:
方法metodo = classe.getMethod(“clone”,tipoDoParametroFormal);
答案 0 :(得分:0)
也许你应该使用Class#getDeclaredMethod
。因为你刚刚宣布&#34;你的克隆方法......如果只是忽略此方法的第二个参数,它会更好。