Com obtenir el tipus d'objecte a Java?

Com Obtenir El Tipus D Objecte A Java



Un objecte és una entitat física que té el seu propi estat i comportament, i actua com una instància única d'una classe Java. Això. Quan l'objecte prové d'una font, es considera útil examinar el tipus d'objecte. A més, conèixer el tipus d'objecte és crucial quan es treballa amb una col·lecció que inclou diferents objectes o quan cal executar l'operació lògica amb el mateix tipus de variables.

Aquest article us ajudarà a aprendre el mètode per obtenir el tipus d'objecte a Java.

Com obtenir el tipus d'objecte a Java?

Per obtenir el tipus d'objecte de classe predefinit o definit per l'usuari a Java, podeu utilitzar:







  • getClass() mètode
  • en lloc de operador

Ara comprovarem cadascun dels mètodes esmentats un per un!



Mètode 1: obteniu el tipus d'objecte de classe predefinit mitjançant el mètode getClass().

A Java, tenim classes predefinides com classes d'embolcall com String, Double, Integer i moltes més. De vegades hem de verificar el tipus d'objecte mentre utilitzem classes predefinides. Amb aquest propòsit, Java ofereix un ' getClass() ” mètode que pertany al “ Objecte ” classe.



Sintaxi
La sintaxi de la ' getClass() ” El mètode es dóna de la següent manera:





x. getClass ( )

Aquí, el ' getClass() El mètode retornarà la classe de la classe especificada x ' objecte.

Exemple
En aquest exemple, crearem un objecte de tipus String anomenat ' x ” que contingui el valor següent:



Corda x = 'Hola' ;

A continuació, imprimirem una declaració utilitzant el ' System.out.println() ” mètode:

Sistema . fora . imprimirln ( 'x pertany a?' ) ;

Finalment, obtindrem el tipus d'objecte ' x ' trucant al ' getClass() ” mètode:

Sistema . fora . imprimir ( x. getClass ( ) ) ;

La sortida mostra que la variable creada pertany a la classe Java String:

Vegem un altre mètode per obtenir el tipus d'objecte mitjançant l'operador 'instanceof'.

Mètode 2: obteniu el tipus d'objecte de classe predefinit mitjançant l'operador 'instanceof'.

També podeu utilitzar el ' en lloc de ” per comprovar el tipus d'objecte en un programa Java. Aquest operador retorna un valor booleà que indica si l'objecte és una instància de la classe concreta o no.

Sintaxi
La sintaxi de la ' en lloc de ” és el següent:

x en lloc de Enter

Aquí, ' x ' és un objecte i ' Enter ” és la classe d'embolcall de Java predefinida. El ' en lloc de ” l'operador comprova si l'objecte pertany o no a la classe esmentada i retorna un valor booleà.

Exemple
En aquest exemple, tenim un objecte ' x ” de la classe Integer que té “ 5 ” com el seu valor:

Enter x = 5 ;

A continuació, imprimirem una declaració utilitzant el ' System.out.println() ” mètode:

Sistema . fora . imprimir ( 'x és una instància de la classe Integer?' ) ;

Ara, comprovarem si l'objecte és una instància d'una classe Integer o no:

Sistema . fora . imprimir ( x en lloc de Enter ) ;

La sortida es mostra ' veritat 'com a objecte' x ” és una instància de la classe Integer:

En aquest punt, potser us preguntareu com obtenir el tipus d'objecte de classe definit per l'usuari. La secció que es mostra a continuació us ajudarà en aquest sentit.

Mètode 3: Obtenir el tipus d'objecte de classe definit per l'usuari mitjançant el mètode getClass().

També podeu obtenir el tipus de l'objecte de classe definit per l'usuari amb l'ajuda del ' getClass() ” mètode. En aquest escenari, compararem l'objecte amb el nom de la classe utilitzant el ' == ” operador de comparació.

Sintaxi
Per al propòsit especificat, la sintaxi de “ getClass() ” mètode es dóna com:

myclassObj. getClass ( ) == La meva classe. classe

Aquí, el ' getClass() El mètode ' s'anomena ' myclassObj 'objecte de la' La meva classe ” i després es compara amb el nom mitjançant l'operador de comparació “ == ”.

Exemple
En aquest exemple, tenim tres classes anomenades ' La meva classe ”, “ La meva nova classe ”, i “ Exemple ”, on MyClass actua com a classe pare de MynewClass:

classe La meva classe { }

El ' La meva nova classe ' és una classe infantil ja que s'estén des de ' La meva classe ”:

classe La meva nova classe s'estén La meva classe { }

En el mètode main() de la classe “ Exemple ”, declararem i instanciarem un objecte de la classe pare “ La meva classe ”. A continuació, comproveu si l'objecte creat pertany a quina classe; pare o fill? Per fer-ho, anomenarem el ' getClass() ” amb l'objecte creat i compareu el valor resultant amb els noms de classe pare i fill utilitzant les condicions if-else-if:

públic classe Exemple {
públic estàtica buit principal ( Corda [ ] args ) {
MyClass myclassObj = nou La meva classe ( ) ;
si ( myclassObj. getClass ( ) == La meva classe. classe ) {
Sistema . fora . imprimirln ( 'L'objecte 'myclassObj' és un tipus de 'MyClass'' ) ;
} altra cosa si ( myclassObj. getClass ( ) == La meva nova classe. classe ) {
Sistema . fora . imprimirln ( 'L'objecte 'myclassObj' és un tipus de 'MynewClass'' ) ;
}
}
}

La sortida indica que l'objecte ' myclassObj ' pertany a la classe dels pares anomenada ' La meva classe ”:

Ara, cap a la següent secció!

Mètode 4: obteniu el tipus d'objecte de classe definit per l'usuari mitjançant l'operador 'instanceof'.

De manera similar a les classes predefinides, per a les classes definides per l'usuari, també podeu obtenir el tipus d'objecte utilitzant el ' en lloc de ” operador.

Sintaxi
La sintaxi es mostra a continuació:

myclassObj en lloc de La meva classe

Aquí, el ' en lloc de ', l'operador comprovarà si el ' myclassObj ' és un exemple de ' La meva classe ” o no.

Exemple
Ara utilitzarem les mateixes classes que hem creat a l'exemple esmentat anteriorment. L'única diferència és que farem servir el ' en lloc de ” per verificar si la instància d'objecte creat pertany a la classe pare o fill:

públic classe Exemple {
públic estàtica buit principal ( Corda [ ] args ) {
MyClass myclassObj = nou La meva classe ( ) ;
si ( myclassObj en lloc de La meva classe ) {
Sistema . fora . imprimirln ( 'L'objecte 'myclassObj' és una instància de 'MyClass'' ) ;
} altra cosa si ( myclassObj en lloc de La meva nova classe ) {
Sistema . fora . imprimirln ( 'L'objecte 'myclassObj' és una instància de 'MynewClass'' ) ;
}
}
}

La sortida donada mostra que el ' en lloc de L'operador va validar el tipus d'objecte com a La meva classe ”:

Hem compilat tots els mètodes relacionats amb l'obtenció del tipus d'objecte a Java.

Conclusió

Per obtenir un tipus d'objecte a Java, podeu utilitzar el ' getClass() mètode ' o el ' en lloc de ” operador. Aquests mètodes es poden utilitzar per comprovar els tipus d'objecte tant per a classes predefinides com per a classes definides per l'usuari. El mètode getClass() retorna el nom de la classe mentre que l'operador 'instanceof' retorna un valor booleà, on ' veritat ” indica que l'objecte pertany a aquesta classe especificada; en cas contrari, torna ' fals ”. Aquest article proporciona tots els mètodes per obtenir el tipus d'objecte a Java.