Object () { try{ UnsignedShortArrayList v = (UnsignedShortArrayList)super.clone(); v.myData = myData.clone(); return v; } catch(CloneNotSupportedException e){ // this shouldn't happen, since we are Cloneable throw new InternalError(); } }