public Object clone(){
  try {
    return super.clone();
  }
 catch (  CloneNotSupportedException e) {
    throw new InternalError(e);
  }
}

public Object clone ( ) { try { return super . clone ( ) ; } catch ( CloneNotSupportedException e ) { throw new InternalError ( e ) ; } }
creates a new object of the same class and with the same contents as this object .
