final 제어자가 없는 clone() 메서드를 보고합니다.
clone()은 생성자를 사용하지 않고 객체를 인스턴스화하기 위해 사용될 수 있으므로 clone() 메서드를 재정의하도록 허용하면 객체가 손상되고 심지어 보안 문제가 발생할 수 있습니다. clone() 메서드 또는 둘러싸는 클래스 자신을 final로 만들어 이러한 결과를 방지할 수 있습니다.
예:
class Main implements Cloneable {
@Override
protected Object clone() throws CloneNotSupportedException {
return super.clone();
}
}