Salve a tutti. Ho un problema con la riscrittura del metodo clone() della classe Object.
Se io creo una classe Prova e una classe Prova2 che estende Prova, non so come implementare clone() visto che i campi di Prova non li vedo nella classe Prova2:
codice:
public class Prova implements Cloneable
{
private int valore;
private String nome;
public Prova()
{
valore = 4;
nome = "abc";
}
public Prova(int v, String n)
{
valore = v;
nome = n;
}
public Object clone()
{
return new Prova(valore , nome);
}
}
Fino a qui credo di avere fatto bene
codice:
public class Prova2 extends Prova implements Cloneable
{
private String nome2;
public Prova2()
{
super();
nome2 = "xyz";
}
public Prova2(int v, String n, String n2)
{
super(v,n);
nome2 = n2;
}
public Object clone()
{
return new Prova2(? , ? , nome2);
}
}
Ecco, nel metodo clone di Prova2 posso solo accedere a nome2, ma le variabili valore e nome non le posso mettere.
Come posso fare a risolvere il problema?