1. ホーム
  2. java

[解決済み] Cloneable throws CloneNotSupportedException

2022-03-04 04:50:30

質問

public class test implements Cloneable {
    @Override
    public test clone() {
        return (test) super.clone();
    }

    public static void main(String[] args) {
        new test().clone();
    }
}

私は error: unreported exception CloneNotSupportedException これをコンパイルしようとすると(mainではなく4行目で)。私が知る限りでは、この実装の目的は Cloneable は、例外を取り除くためです。

  • を使用する方法はありますか? super.clone() 例外をスローまたはキャッチすることなく?
  • このインターフェースは、実際に何かをするのですか?

解決方法は?

<ブロッククオート

例外をスローまたはキャッチせずに super.clone() を使用する方法はありますか?

いいえ、なぜなら Object#clone() (で呼び出しているメソッド)。 super.clone() )が宣言しています。

このインターフェースは、実際に何かをするのでしょうか?

はい、でもほとんどありません。実装しなければ。 Object#clone() は、実際に宣言された例外をスローします。