Deep Copy
In Deep copy all the fields are deeply copied from source object to destination object. If the source object is containing any field that holds a reference to another object then for the destination object a new copy will be created i.e. source and destination objects field will point to different memory location. Java code for Deep Copy package deep; class JobDescription { private String designation; public JobDescription(String designation) { this.designation = designation; } public String getDesignation() { return designation; } public void setDesignation(String designation) { this.designation = designation; } @Override public String toString() { ...