Introducción
Una copia superficial simplemente copiará los valores de los campos del objeto original en el nuevo objeto. En una copia superficial, si el objeto original tiene alguna referencia a otros objetos de clase, entonces solo se clona la referencia de ese objeto. Por lo tanto, cualquier cambio en este objeto referenciado se reflejará tanto en el objeto original como en el objeto clonado. Sin embargo, una copia profunda crea un nuevo objeto, incluyendo todos los objetos referenciados, y cualquier cambio realizado en el objeto clonado no afectará al objeto original.