従業員クラスの親が抽象で、親クラスの clone() メソッドが抽象の場合に、このクローン メソッドを作成しました。各プリミティブ データをコピーする代わりに、このコードで従業員のオブジェクトのプリミティブ データ型をコピーしたかったのです。個別に入力しますが、このコードには clone() メソッドを呼び出す行に問題があります。(このコードは Employee クラスにあります)
public Object clone() {
Object obj = new Object();
Object object = obj.clone(); //Emphasis here
return object;
}
エラー: Object 型のメソッド clone() が表示されません。
しかし、私の Employee クラスは、Object クラスの保護された clone() メソッドにアクセスできるクラス階層にあります。
これは私の単純な Employee クラスです:
public class Employee extends Person implements Cloneable {
private int ID;
public Employee() {
ID = 0;
}
public void setID(int ID) {
this.ID = ID;
}
public int getID() {
return ID;
}
public Object clone1() throws CloneNotSupportedException {
try {
Object obj = new Object();
Object object = obj.clone();
return object;
} catch (CloneNotSupportedException ex) {
return null;
}
}