Q: Quelle est la classe d'objets?
Réponse: La classe d'objets est stockée dans le package java.lang et est la classe parent ultime de toutes les classes Java (sauf la classe d'objets). Bien sûr, les tableaux héritent également de la classe d'objets. Cependant, l'interface n'hérite pas de la classe d'objets et la classe d'objets ne sert pas de classe parent de l'interface.
Ensuite, nous analysons l'objet à travers des exemples
classe publique ObjectStu {/ * Classe d'objets: La classe parent de toutes les classes de Java, classe de niveau supérieur * est égal: déterminer si deux objets sont "égaux"; * HashCode: renvoie la valeur de code de hash d'un objet, qui est un entier * parce que les conteneurs suivants, tels que HashSet et HashMap, déduiront les éléments; Par conséquent, les égaux et le code de hash doivent être réécrits en même temps; * Les critères à remplir après la réécriture: * Lorsque le résultat de l'égal est vrai, les valeurs de code de hash des deux objets doivent être égales; * Lorsque le résultat des égaux est faux, les valeurs de code de hash des deux objets doivent être inégales; (Les codes de hash peuvent être égaux, mais s'ils ne sont pas égaux, il peut améliorer l'efficacité) * TOSTRING: Renvoie la représentation de chaîne de l'objet * Fonction: Il est pratique de visualiser les propriétés des objets dans le programme et de déboguer le code * Debug Learning: * 1. Définir les points d'arrêt où il peut y avoir des bogues * 2.Run en tant que débogage * 3.f6, exécutez le code actuel; F5, entrez la méthode du code actuel dans cette phrase; F8, passez rapidement au prochain point d'arrêt, s'il n'y a pas de prochain point d'arrêt, exécutez tout le code restant * est égal: * 1. Cohérence: utilisez l'objet A pour appeler égaux et objet B pour comparer, le résultat de chaque fois doit être le même * 2. Réflexivité: l'objet A appelle équivaut à comparer l'objet B et l'objet B Les appels sont égaux pour comparer l'objet a devrait être le même * / public static void main (String [] args) {Person per = new Person ("Xiao wang", 10 150); personne Per1 = new Person ("Xiao Wang", 20 140); personne Per2 = per; System.out.println (par == Per1); System.out.println (par.equals (Per1)); String str = "123"; str.equals ("123"); str.hashcode (); system.out.println (per.hashcode ()); system.out.println (per1.hashcode ()); system.ou t.println (per2.hashcode ()); System.out.println (per2 Personne {nom de la chaîne; int Âge; int hauteur; Public Person (nom de chaîne, int age, int hauteur) {super (); this.height = height; this.name = name; this.age = age;} / * @ override public booléan est égal (objet obj) {if (this == obj) {return true; } if (obj instanceof personne) {personne per = (personne) obj; if (this.name.equals (per.name) && this.age == Per.age) {return true; }} return false; } * /// Réécriture de HashCode / * @ Override public int hashcode () {return name.hashcode () + âge * 31 + hauteur * 31; } * / @ Override public int hashcode () {final int prime = 31; int result = 1; result = prime * result + Âge; result = prime * result + height; result = prime * result + ((name == null)? 0: name.hashcode ()); return result;} @ override public boolean équal (getClass ()! = obj.getClass ()) return false; personne autre = (personne) obj; if (age! = autre.age) return false; if (height! = other.height) return false;} else if (! null) {if (autre.name! = Null) "Person [name =" + name + ", age =" + age + "]";}}Résumer
Ce qui précède est tout le contenu de cet article sur l'analyse des instances de classe d'objets en Java, j'espère que ce sera utile à tout le monde. Les amis intéressés peuvent continuer à se référer à ce site:
Explication détaillée du code de classe de test interne Java
Analyse du code de test de succession dans Java
Exemple d'utilisation du code de la pile (pile) en java
S'il y a des lacunes, veuillez laisser un message pour le signaler. Merci vos amis pour votre soutien pour ce site!