Heim  >  Artikel  >  Java  >  Detaillierte Einführung in die Object-Klasse in Java

Detaillierte Einführung in die Object-Klasse in Java

不言
不言nach vorne
2019-03-13 11:56:033693Durchsuche

Dieser Artikel bietet Ihnen eine detaillierte Einführung in die Object-Klasse in Java. Ich hoffe, dass er für Freunde hilfreich ist.

Die Object-Klasse befindet sich im Paket java.lang und ist der Vorfahre aller Java-Klassen. Jede Klasse in Java geht davon aus.

Wenn die übergeordnete Klasse beim Definieren einer Java-Klasse nicht explizit angegeben wird, erbt sie standardmäßig die Object-Klasse. Zum Beispiel:

 public class Demo{
     // ...
 }

ist eigentlich die Kurzform des folgenden Codes:

public class Demo extends Object{
     // ...
}

In Java sind beispielsweise numerische, zeichenhafte und boolesche Werte keine Objekte sind Objektarrays oder Arrays vom Typ Basic, die von der Object-Klasse geerbt werden.

Die Object-Klasse definiert einige nützliche Methoden. Da es sich um eine Stammklasse handelt, sind diese Methoden normalerweise überladen oder überschrieben, um ihre jeweiligen spezifischen Funktionen zu implementieren

equals()-Methode

Die equal()-Methode in der Object-Klasse wird verwendet, um zu erkennen, ob ein Objekt äquivalent zu For ist Bei einem anderen Objekt lautet die Syntax:

public boolean equals(Object obj)

Beispiel:

obj1.equals(obj2);

In Java besteht die grundlegende Bedeutung der Datengleichheit darin, dass zwei Werte vorliegen ​​der Daten sind gleich. Beim Vergleich über equal() und „==“ werden die Referenztypdaten mit der Referenz, also der Speicheradresse, und der Basisdatentyp mit dem Wert verglichen.

Hinweis:

Die Methode equal() kann nur Referenztypen vergleichen, „==" kann Referenztypen und Basistypen vergleichen.

Beim Vergleich mit der Methode equal() werden für die Klassen File, String, Date und Wrapper die Typen und Inhalte verglichen, ohne zu berücksichtigen, ob sich die Verweise auf dieselbe Instanz beziehen.

Beim Vergleich mit „==“ müssen die Datentypen auf beiden Seiten des Symbols konsistent sein (mit Ausnahme automatisch konvertierbarer Datentypen), andernfalls tritt ein Kompilierungsfehler auf zwei mit der Methode equal verglichen, solange die Daten vom Referenztyp sind.

hashCode()-Methode

Hash-Code (hashCode) wird von einem Objekt gemäß einem bestimmten numerischen Algorithmus abgerufen Für Werte und Hash-Codes gibt es keine Regeln. Wenn x und y unterschiedliche Objekte sind, sind x.hashCode() und y.hashCode() grundsätzlich nicht gleich.

Die Methode hashCode() wird hauptsächlich zum Implementieren von Vorgängen wie der schnellen Suche in Sammlungen verwendet und kann auch zum Objektvergleich verwendet werden.

In Java ist hashCode wie folgt definiert:

Während der Ausführung derselben Anwendung wird hashCode() für dasselbe Objekt aufgerufen . muss das gleiche ganzzahlige Ergebnis zurückgeben – vorausgesetzt, dass keine der von equal() verglichenen Informationen geändert wurde. Die von derselben Anwendung in unterschiedlichen Ausführungsperioden erzielten Aufrufergebnisse müssen nicht konsistent sein.

Wenn zwei Objekte von der Methode equal() als gleich angesehen werden, muss der Aufruf von hashCode() für beide Objekte das gleiche ganzzahlige Ergebnis liefern.

Wenn zwei Objekte von der Methode equal() als ungleich betrachtet werden, muss der Aufruf von hashCode() für die beiden Objekte nicht zu unterschiedlichen ganzzahligen Ergebnissen führen. Programmierer sollten sich jedoch darüber im Klaren sein, dass die Erzeugung unterschiedlicher ganzzahliger Ergebnisse für verschiedene Objekte die Effizienz von hashTable verbessern kann (Sie werden später mehr darüber erfahren, eine Klasse im Collections-Framework).

Einfach ausgedrückt: Wenn zwei Objekte gleich sind, müssen ihre HashCode-Werte gleich sein; wenn die HashCode-Werte der beiden Objekte gleich sind, sind sie es nicht zwangsläufig das Gleiche. In der Java-Spezifikation ist festgelegt, dass die allgemeine Abdeckung der Methode equal() auch die Methode hashCode() abdecken sollte.

toString()-Methode

toString()-Methode ist eine weitere wichtige Methode, die in der Object-Klasse definiert ist und die Zeichenfolgendarstellung des Objekts darstellt. Die Syntax lautet:

public String toString()

Der Rückgabewert ist vom Typ String und wird zur Beschreibung relevanter Informationen des aktuellen Objekts verwendet. Die in der Object-Klasse implementierte toString () -Methode gibt die Typ- und Speicheradressinformationen des aktuellen Objekts zurück, wurde jedoch in einigen Unterklassen (z. B. String, Date usw.) umgeschrieben und kann auch benutzerdefiniert umgeschrieben werden Geben Sie nach Bedarf die toString()-Methode ein, um weitere anwendbare Informationen zurückzugeben.

Zusätzlich zum expliziten Aufruf der toString()-Methode des Objekts wird die toString()-Methode automatisch aufgerufen, wenn String mit anderen Datentypen verbunden wird.

Die oben genannten Methoden werden häufig in Java verwendet. Hier ist nur eine kurze Einführung, um alle über die Object-Klasse und andere Klassen zu informieren. Eine detaillierte Beschreibung finden Sie in der Java-API-Dokumentation.

Das obige ist der detaillierte Inhalt vonDetaillierte Einführung in die Object-Klasse in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:cnblogs.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen