この非 final クラスは、super.clone() を呼び出さない clone メソッドを定義しています。 クラス A がサブクラス B によって拡張され、サブクラス Bsuper.clone() を呼び出すなら、クラス Bclone メソッドは、型 A のオブジェクトを返す可能性が高いです。 これは clone のための汎用規約に違反します。

すべての clone メソッドが super.clone() を呼び出すなら Object.clone() が呼び出されることが保証され、常に正しい型のオブジェクトが返されます。