final
修饰符的 clone()
方法。
clone()
可以用于在不使用构造函数的情况下实例化对象,因此允许重写 clone()
方法可能导致对象损坏,甚至导致安全漏洞。 将 clone()
方法或封闭类本身设为 final
可以防止这种情况。
示例:
class Main implements Cloneable {
@Override
protected Object clone() throws CloneNotSupportedException {
return super.clone();
}
}