Cloning and Inheritance
- Object.clone is paranoid
- clone only clones Cloneable objects
- clone throws checked exception
- You don't have that luxury
- Employee.clone is every bit as risky as Object.clone
- Manager.clone must be defined if Manager
adds mutable fields
- Rule of thumb: if you extend a class that defines clone,
redefine clone
- Lesson to learn: Tagging interfaces are inherited.