F: Was ist die Objektklasse?
Antwort: Die Objektklasse wird im Java.lang -Paket gespeichert und ist die ultimative übergeordnete Klasse aller Java -Klassen (mit Ausnahme der Objektklasse). Natürlich erben Arrays auch die Objektklasse. Die Schnittstelle erbt jedoch nicht die Objektklasse, und die Objektklasse dient nicht als übergeordnete Klasse der Schnittstelle.
Als nächstes analysieren wir das Objekt anhand von Beispielen
public class Objectstu {/*Objektklasse: Die übergeordnete Klasse aller Klassen in Java, Klasse der obersten Ebene*entspricht: Bestimmen Sie, ob zwei Objekte "gleich" sind; * HashCode: Gibt den Hash -Code -Wert eines Objekts zurück, das eine Ganzzahl ist*, da die nachfolgenden Container wie Hashset und HashMap die Elemente widmen; Daher müssen Gleiche und Hashcode gleichzeitig umgeschrieben werden; * Die Kriterien, die nach dem Umschreiben erfüllt werden sollen: * Wenn das Ergebnis von Equals wahr ist, müssen die Hashcode -Werte der beiden Objekte gleich sein; * Wenn das Ergebnis von Equals falsch ist, müssen die HashCode -Werte der beiden Objekte ungleich sein; (Hashcodes können gleich sein, aber wenn nicht gleich, kann es die Effizienz verbessern.) *toString: Gibt die String -Darstellung des Objekts zurück. Setzen Sie Breakpoints, wo es Fehler gibt *2.Run als Debug *3.f6, den aktuellen Code ausführen. F5 geben Sie die Methode des aktuellen Code in diesen Satz ein. F8, springen Sie schnell zum nächsten Haltepunkt, wenn es keinen nächsten Haltepunkt gibt, führen Sie den verbleibenden Code aus *gleich: *1. Konsistenz: Verwenden Sie das Objekt A, um gleich und Objekt B zu vergleichen. Das Ergebnis jeder Zeit sollte gleich sein*2. Reflexivität: Objekt A Aufrufe sind gleich, um Objekt B und Objekt B zu vergleichen, um das Objekt A zu vergleichen. per; system.out.println (per == per1); System.out.println (per.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 ()); Person {String name; int ay; int height; öffentliche Person (Stringname, int Alter, int Höhe) {Super (); this.height = height; this.name = name; this.age = älter;}/*@overside public boolean gleich (Objekt obj) {if (this == obj) {return true; } if (obj Instance von Person) {Person per = (Person) obj; if (this.name.equals (per.name) && this.age == per.age) {return true; }} return false; }*/// HashCode neu schreiben/*@override public int hashcode () {return name.hashcode ()+älter*31+Höhe*31; } */@Override public int HashCode () {endgültig int Prime = 31; int result = 1; result = prime * result + alter; result = prime * result + height; result = prime * result + ((name == null)? 0: name.hashcode ()) return result;}}@overide öffentlich boolean (Object. (getClass ()! "Person [name ="+name+", ay"+alter+"]";}}Zusammenfassen
Das obige ist der gesamte Inhalt dieses Artikels über die Analyse von Objektklasseninstanzen in Java. Ich hoffe, es wird für alle hilfreich sein. Interessierte Freunde können weiterhin auf diese Seite verweisen:
Detaillierte Erläuterung des Code für interne Testklassen von Java
Analyse der Vererbungstestcode in Java
Beispiel für die Codeverwendung von Stack (Stack) in Java
Wenn es Mängel gibt, hinterlassen Sie bitte eine Nachricht, um darauf hinzuweisen. Vielen Dank an Freunde für Ihre Unterstützung für diese Seite!