Inspectopedia Help

Cloneable class in secure context

Reports classes which may be cloned.

A class may be cloned if it supports the Cloneable interface, and its clone() method is not defined to immediately throw an error. Cloneable classes may be dangerous in code intended for secure use.

Example:

class SecureBean implements Cloneable {}

After the quick-fix is applied:

class SecureBean {}

When the class extends an existing cloneable class or implements a cloneable interface, then after the quick-fix is applied, the code may look like:

class SecureBean extends ParentBean { @Override protected SecureBean clone() throws CloneNotSupportedException { throw new CloneNotSupportedException(); } }

Inspection Details

Available in:

IntelliJ IDEA 2023.3, Qodana for JVM 2023.3

Plugin:

Java, 233.SNAPSHOT

Last modified: 13 July 2023