Pourquoi remplacer la méthode clone en Java

Je suis confus en ce qui concerne substituant la méthode clone dans la classe pour laquelle je veux l'objet cloné.

Objet de la classe a objet protégé méthode et par les protégés de comportement qui est Lorsqu'une méthode est protégé, il ne peut être accédé que par la classe elle-même, les sous-classes de la classe ou de classes dans le même package que la classe.

Que chaque classe en Java s'étend de l'Objet, de sorte qu'il devrait avoir méthode clone mais encore, nous sommes obligés de remplacer clone. Pourquoi est-elle nécessaire?

Aussi, j'ai lu à certains endroits pour remplacer le clone de l'objet et de le rendre public. Je me demande, pourquoi est-il si?

Toutes les réponses sont les bienvenues.

source d'informationauteur Anand