throws CloneNotSupportedException
的 clone()
方法。
如果没有声明 throws CloneNotSupportedException
,该方法的子类将不能以标准方式禁止克隆。 此检查不会报告声明为 final
的 clone()
方法和 final
类内的 clone()
方法。
配置检查:
使用仅对 'protected' 克隆方法发出警告选项可以指示此检查仅对 protected clone()
方法发出警告。
Effective Java 一书(第二版和第三版)建议在 public
方法上省略 CloneNotSupportedException
声明,因为不抛出已检查的异常的方法更容易使用。
示例:
public class Example implements Cloneable {
// 方法未声明 ’throws CloneNotSupportedException‘
protected Object clone() {
try {
return super.clone();
} catch (CloneNotSupportedException e) {
return null;
}
}
}