Cloneable (Java SE 12 & JDK 12 )
-
- All Known Subinterfaces:
AclEntry,Attribute,AttributedCharacterIterator,Attributes,CertPathBuilderResult,CertPathParameters,CertPathValidatorResult,CertSelector,CertStoreParameters,CharacterIterator,CRLSelector,Descriptor,ExtendedGSSCredential,GSSCredential,Name
public interface CloneableA class implements the
Cloneableinterface to indicate to theObject.clone()method that it is legal for that method to make a field-for-field copy of instances of that class.Invoking Object's clone method on an instance that does not implement the
Cloneableinterface results in the exceptionCloneNotSupportedExceptionbeing thrown.By convention, classes that implement this interface should override
Object.clone(which is protected) with a public method. SeeObject.clone()for details on overriding this method.Note that this interface does not contain the
clonemethod. Therefore, it is not possible to clone an object merely by virtue of the fact that it implements this interface. Even if the clone method is invoked reflectively, there is no guarantee that it will succeed.- Since:
- 1.0
- See Also:
CloneNotSupportedException,Object.clone()
Report a bug or suggest an enhancement
For further API reference and developer documentation see the Java SE Documentation, which contains more detailed, developer-targeted descriptions with conceptual overviews, definitions of terms, workarounds, and working code examples.
Java is a trademark or registered trademark of Oracle and/or its affiliates in the US and other countries.
Copyright © 1993, 2019, Oracle and/or its affiliates, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
All rights reserved. Use is subject to license terms and the documentation redistribution policy.