cloneImpl(obj) copies a System object™ by using the saveObjectImpl and loadObjectImpl methods. The default cloneImpl copies an object and its current state but does not copy any private or protected properties. If the object you clone is locked and you use the default cloneImpl, the new object will also be locked. If you define your own cloneImpl and the associated saveObjectImpl and loadObjectImpl, you can specify whether to clone the object's state and whether to clone the object's private and protected properties.
cloneImpl is called by the clone method.