Bonjour, je suis pour le moment entrain de débuter la programmation en Java à l'aide d'un livre comme il se doit et malgré mes relectures, je pense que ces commentaires (qui viennent du livre) sont incorrects :
Pour la première instruction par exemple, je déduis :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Object o1, o2; String ch1 = "...", ch2 = "..."; o1 = ch1; o2 = ch2; ........... o1.equals(o2) // utilise equals de object o1.equals(ch2) // utilise equals de object ch1.equals(o2) // utilise equals de string ch1.equals(ch2) // utilise equals de string
- On regarde le type de o1 (Object) et on cherche la signature de la meilleure méthode (boolean equals(Object))
- A l'exécution o1 référence un String et comme la classe String redéfinit la méthode equals identiquement (même signature), on utilise equals de String et non de Object.
Impossible de trouver mon erreur en cherchant, j'ai même refais le test avec des classes que j'ai créer et j'arrive à ma conclusion...![]()
Partager