Préface
Contrairement à C ++, la langue Java est un langage de structure d'héritage unique, ce qui signifie que toutes les classes de Java ont un ancêtre commun. Cet ancêtre est la classe d'objets.
La classe d'objets est appelée God Class, également connue sous le nom de classe des ancêtres. Lors de la définition d'une classe Java, si la classe parent n'est pas spécifiée, la classe d'objets sera héritée par défaut. Avec la conversion de type Java, beaucoup de travail peut être fait avec l'aide de la classe d'objets.
La structure de la classe d'objets
Méthodes de classe d'objets
Dans la classe d'objets, il existe plusieurs méthodes couramment utilisées, telles que getClass (), toString () et equals (). Leur implémentation dans Object.java est la suivante: (Le code source de Object.java est dans src.zip dans le répertoire d'installation Java, et sa structure de répertoire est Src / Java / Lang / Object.Java).
public Final Native class <?> getClass (); public boolean equals (objet obj) {return (this == obj);} public String toString () {return getClass (). getName () + "@" + integer.tohexString (hashcode ());};Pour getClass (), il peut obtenir des cours lors de l'exécution.
equals () est généralement utilisé pour la comparaison. Dans la classe d'objets, il compare les références et ne renvoie que si les références sont les mêmes. Mais ce n'est pas le cas de comparaison que nous voulons, par exemple, la comparaison des chaînes est de comparer si chaque caractère est le même. Ensuite, la méthode equals () sera réécrite dans la classe String. L'implémentation de la méthode equals () dans la classe String est la suivante: (Le code source de String.java est dans src.zip dans le répertoire d'installation Java, et sa structure de répertoire est Src / Java / Lang / String.java).
public booléen égaux (objet anobject) {if (this == anObject) {return true; } if (anobject instanceof string) {String anotherstring = (string) anObject; int n = value.length; if (n == anotherstring.value.length) {char v1 [] = valeur; char v2 [] = anotherstring.value; int i = 0; while (n--! = 0) {if (v1 [i]! = v2 [i]) return false /; i ++; } return true; }} return false;}La comparaison des chaînes a été faite plusieurs fois:
1. Premièrement, jugez que les références sont les mêmes, et si elles sont identiques, revenez vrai;
2. Déterminez si l'objet entrant est une chaîne. S'il ne s'agit pas d'une chaîne, il renverra directement False. Il n'est pas nécessaire de le comparer, comment le chien et l'homme peuvent-ils être comparés;
3. Comparez la longueur de la chaîne. Si les longueurs des deux chaînes sont différentes, il n'est pas nécessaire de les comparer. Les différentes longueurs sont évidemment différentes;
4. Si la comparaison ci-dessus n'est pas vraie, une comparaison caractéristique par caractères est effectuée.
À titre de comparaison de deux objets, nous devons généralement réécrire la méthode equals () comme la méthode equals () dans la classe String.
La troisième méthode TOSTRING () sortit la classe d'exécution actuelle et un HashCode dans la classe d'objets par défaut, ce qui ne nous est pas particulièrement utile. Pour les cours écrits par nous-mêmes, vous pouvez produire tous les attributs de la classe. Après avoir réécrit la méthode toString (), vous pouvez utiliser directement System.out.println () pour passer le nom de l'objet, et vous pouvez appeler la méthode ToString () de l'objet par défaut.
En tant que débutant, vous devez constamment écrire du code et enregistrer une grande partie de ce que vous avez appris pour approfondir votre impression. Vous devez également rechercher facilement lorsque vous oubliez, et l'enregistrez ici et vous le faites pratique pour vous le rendre pratique pour vous à tout moment!
Résumer
Ce qui précède est l'intégralité du contenu de cet article. J'espère que le contenu de cet article a une certaine valeur de référence pour l'étude ou le travail de chacun. Si vous avez des questions, vous pouvez laisser un message pour communiquer. Merci pour votre soutien à wulin.com.