Wie erhalte ich den Objekttyp in Java?

Wie Erhalte Ich Den Objekttyp In Java



Ein Objekt ist eine physische Entität, die ihren eigenen Zustand und ihr eigenes Verhalten hat und als eindeutige Instanz einer Java-Klasse fungiert. Es. Wenn das Objekt aus einer Quelle stammt, wird es als nützlich erachtet, den Objekttyp zu untersuchen. Außerdem ist es wichtig, den Typ eines Objekts zu kennen, wenn mit einer Sammlung gearbeitet wird, die verschiedene Objekte enthält, oder wenn es erforderlich ist, die logische Operation mit der gleichen Art von Variablen auszuführen.

Dieser Artikel hilft Ihnen, die Methode zu lernen, um den Typ eines Objekts in Java zu erhalten.

Wie erhalte ich den Objekttyp in Java?

Um den Typ des vordefinierten oder benutzerdefinierten Klassenobjekts in Java zu erhalten, können Sie Folgendes verwenden:







  • getClass() Methode
  • Instanzvon Operator

Wir werden uns nun jede der genannten Methoden einzeln ansehen!



Methode 1: Holen Sie sich den Typ des vordefinierten Klassenobjekts mit der Methode getClass()

In Java haben wir vordefinierte Klassen wie Wrapper-Klassen wie String, Double, Integer und viele mehr. Manchmal müssen wir den Objekttyp überprüfen, während wir vordefinierte Klassen verwenden. Dafür bietet Java ein „ getClass() “ Methode, die zu den „ Objekt ' Klasse.



Syntax
Die Syntax des „ getClass() “-Methode wird wie folgt angegeben:





x. getClass ( )

Hier die ' getClass() “-Methode gibt die Klasse des angegebenen „ x ' Objekt.

Beispiel
In diesem Beispiel erstellen wir ein Objekt vom Typ String mit dem Namen „ x “ mit folgendem Wert:



Schnur x = 'Hallo' ;

Als nächstes drucken wir eine Erklärung mit dem „ System.out.println() ' Methode:

System . aus . println ( 'x gehört zu?' ) ;

Zuletzt erhalten wir den Typ des Objekts „ x “ durch Aufrufen der „ getClass() ' Methode:

System . aus . drucken ( x. getClass ( ) ) ;

Die Ausgabe zeigt, dass die erstellte Variable zur Klasse Java String gehört:

Sehen wir uns eine andere Methode an, um den Objekttyp mit dem „instanceof“-Operator abzurufen.

Methode 2: Abrufen des Typs des vordefinierten Klassenobjekts mithilfe des „instanceof“-Operators

Sie können auch die „ Instanzvon ”-Operator, um den Objekttyp in einem Java-Programm zu überprüfen. Dieser Operator gibt einen booleschen Wert zurück, der angibt, ob das Objekt eine Instanz der bestimmten Klasse ist oder nicht.

Syntax
Die Syntax des „ Instanzvon ' ist wie folgt:

x Instanzvon Ganze Zahl

Hier, ' x ” ist ein Objekt und “ Ganze Zahl “ ist die vordefinierte Java-Wrapper-Klasse. Das ' Instanzvon ”-Operator prüft, ob das Objekt zu der genannten Klasse gehört oder nicht und gibt einen booleschen Wert zurück.

Beispiel
In diesem Beispiel haben wir ein Objekt „ x ” der Integer-Klasse mit „ 5 ” als Wert:

Ganze Zahl x = 5 ;

Als nächstes drucken wir eine Erklärung mit dem „ System.out.println() ' Methode:

System . aus . drucken ( 'x ist eine Instanz der Integer-Klasse?' ) ;

Nun prüfen wir, ob das Objekt eine Instanz einer Integer-Klasse ist oder nicht:

System . aus . drucken ( x Instanzvon Ganze Zahl ) ;

Die angezeigte Ausgabe „ Stimmt „als Objekt“ x “ ist eine Instanz der Integer-Klasse:

An dieser Stelle fragen Sie sich vielleicht, wie Sie den Typ des benutzerdefinierten Klassenobjekts erhalten. Der folgende Abschnitt wird Ihnen dabei behilflich sein.

Methode 3: Abrufen des Typs des benutzerdefinierten Klassenobjekts mithilfe der Methode getClass()

Sie können den Typ des benutzerdefinierten Klassenobjekts auch mit Hilfe des „ getClass() ' Methode. In einem solchen Szenario vergleichen wir das Objekt mit dem Klassennamen unter Verwendung des „ == ” Vergleichsoperator.

Syntax
Für den angegebenen Zweck ist die Syntax von „ getClass() ” Methode wird angegeben als:

myclassObj. getClass ( ) == Meine Klasse. Klasse

Hier die ' getClass() “-Methode wird von der „ myclassObj „Objekt der“ Meine Klasse “ und dann mit dem Vergleichsoperator „ == “.

Beispiel
In diesem Beispiel haben wir drei Klassen namens „ Meine Klasse “, „ MeineneueKlasse ', und ' Beispiel “, wobei MyClass als übergeordnete Klasse von MynewClass fungiert:

Klasse Meine Klasse { }

Das ' MeineneueKlasse „ ist eine untergeordnete Klasse, da sie von „ Meine Klasse “:

Klasse MeineneueKlasse erweitert Meine Klasse { }

In der main() Methode der Klasse „ Beispiel “, werden wir ein Objekt der Elternklasse deklarieren und instanziieren „ Meine Klasse “. Überprüfen Sie dann, ob das erstellte Objekt zu welcher Klasse gehört; Elternteil oder Kind? Dazu rufen wir die „ getClass() ”-Methode mit dem erstellten Objekt und vergleichen Sie den resultierenden Wert mit den Namen der übergeordneten und untergeordneten Klassen unter Verwendung von if-else-if-Bedingungen:

Öffentlichkeit Klasse Beispiel {
Öffentlichkeit statisch Leere hauptsächlich ( Schnur [ ] Argumente ) {
MeineKlasse MeineKlasseObj = Neu Meine Klasse ( ) ;
wenn ( myclassObj. getClass ( ) == Meine Klasse. Klasse ) {
System . aus . println ( 'Das Objekt 'myclassObj' ist ein Typ von 'MyClass'' ) ;
} anders wenn ( myclassObj. getClass ( ) == MeineneueKlasse. Klasse ) {
System . aus . println ( 'Das Objekt 'myclassObj' ist ein Typ von 'MynewClass'' ) ;
}
}
}

Die Ausgabe zeigt an, dass das Objekt „ myclassObj ” gehört zur übergeordneten Klasse mit dem Namen “ Meine Klasse “:

Gehen Sie jetzt zum nächsten Abschnitt!

Methode 4: Abrufen des Typs des benutzerdefinierten Klassenobjekts mithilfe des „instanceof“-Operators

Ähnlich wie bei vordefinierten Klassen können Sie bei benutzerdefinierten Klassen auch den Objekttyp ermitteln, indem Sie das „ Instanzvon ' Operator.

Syntax
Die Syntax ist unten angegeben:

myclassObj Instanzvon Meine Klasse

Hier die ' Instanzvon “-Operator prüft, ob der „ myclassObj ' ist eine Instanz von ' Meine Klasse ' oder nicht.

Beispiel
Wir werden nun dieselben Klassen verwenden, die wir in dem zuvor erwähnten Beispiel erstellt haben. Der einzige Unterschied besteht darin, dass wir das „ Instanzvon ”-Operator, um zu überprüfen, ob die erstellte Objektinstanz zur übergeordneten oder untergeordneten Klasse gehört:

Öffentlichkeit Klasse Beispiel {
Öffentlichkeit statisch Leere hauptsächlich ( Schnur [ ] Argumente ) {
MeineKlasse MeineKlasseObj = Neu Meine Klasse ( ) ;
wenn ( myclassObj Instanzvon Meine Klasse ) {
System . aus . println ( 'Das Objekt 'myclassObj' ist eine Instanz von 'MyClass'' ) ;
} anders wenn ( myclassObj Instanzvon MeineneueKlasse ) {
System . aus . println ( 'Das Objekt 'myclassObj' ist eine Instanz von 'MynewClass'' ) ;
}
}
}

Die angegebene Ausgabe zeigt, dass die „ Instanzvon ” Operator hat den Typ des Objekts validiert als „ Meine Klasse “:

Wir haben alle Methoden zum Abrufen des Objekttyps in Java zusammengestellt.

Fazit

Um einen Objekttyp in Java zu erhalten, können Sie die „ getClass() “ Methode oder die „ Instanzvon ' Operator. Mit diesen Methoden können Objekttypen sowohl für vordefinierte als auch für benutzerdefinierte Klassen überprüft werden. Die Methode getClass() gibt den Klassennamen zurück, während der Operator „instanceof“ einen booleschen Wert zurückgibt, wobei „ Stimmt “ gibt an, dass das Objekt zu dieser angegebenen Klasse gehört; andernfalls gibt es „ FALSCH “. Dieser Artikel enthält alle Methoden zum Abrufen des Objekttyps in Java.