Questo articolo ti aiuterà a imparare il metodo per ottenere il tipo di un oggetto in Java.
Come ottenere il tipo di oggetto in Java?
Per ottenere il tipo di oggetto classe predefinito o definito dall'utente in Java, puoi usare:
- getClass() metodo
- istanza di operatore
Ora esamineremo ciascuno dei metodi menzionati uno per uno!
Metodo 1: Ottieni il tipo di oggetto di classe predefinito utilizzando il metodo getClass()
In Java, abbiamo classi predefinite come classi wrapper come String, Double, Integer e molte altre. A volte è necessario verificare il tipo di oggetto durante l'utilizzo di classi predefinite. A questo scopo, Java offre un ' getClass() ” metodo che appartiene al “ Oggetto ' classe.
Sintassi
La sintassi di ' getClass() ” è dato come segue:
X. getClass ( )
Qui, il “ getClass() ' il metodo restituirà la classe del ' X ” oggetto.
Esempio
In questo esempio creeremo un oggetto di tipo String chiamato ' X ” contenente il seguente valore:
Corda X = 'Ciao' ;
Successivamente, stamperemo un'istruzione utilizzando ' System.out.println() ' metodo:
Sistema . fuori . println ( 'x appartiene a?' ) ;Infine, otterremo il tipo dell'oggetto ' X ” chiamando il “ getClass() ' metodo:
Sistema . fuori . Stampa ( X. getClass ( ) ) ;L'output mostra che la variabile creata appartiene alla classe Java String:
Vediamo un altro metodo per ottenere il tipo di oggetto utilizzando l'operatore 'instanceof'.
Metodo 2: ottenere il tipo di oggetto di classe predefinito utilizzando l'operatore 'instanceof'.
Puoi anche utilizzare il ' istanza di ” per verificare il tipo di oggetto in un programma Java. Questo operatore restituisce un valore booleano che indica se l'oggetto è un'istanza di una particolare classe o meno.
Sintassi
La sintassi di ' istanza di ' è come segue:
Qui, ' X ” è un oggetto e “ Numero intero ” è la classe wrapper Java predefinita. Il ' istanza di L'operatore ” controlla se l'oggetto appartiene o meno alla classe menzionata e restituisce un valore booleano.
Esempio
In questo esempio, abbiamo un oggetto ' X ” della classe Intero avente “ 5 ” come suo valore:
Successivamente, stamperemo un'istruzione utilizzando ' System.out.println() ' metodo:
Sistema . fuori . Stampa ( 'x è un'istanza della classe Integer?' ) ;Ora verificheremo se l'oggetto è un'istanza di una classe Integer o meno:
Sistema . fuori . Stampa ( X istanza di Numero intero ) ;
L'output visualizzato ' VERO ” come l'oggetto “ X ” è un'istanza della classe Integer:
A questo punto, ti starai chiedendo come ottenere il tipo di oggetto classe definito dall'utente. La sezione seguente ti aiuterà in questo senso.
Metodo 3: Ottieni il tipo di oggetto classe definito dall'utente utilizzando il metodo getClass()
Puoi anche ottenere il tipo dell'oggetto classe definito dall'utente con l'aiuto di ' getClass() ' metodo. In uno scenario del genere, confronteremo l'oggetto con il nome della classe usando ' == ” operatore di confronto.
Sintassi
Per lo scopo specificato, la sintassi di ' getClass() ” è dato come:
Qui, il “ getClass() ” metodo è chiamato dal “ miaclassOggetto ” oggetto del “ La mia classe ” e quindi confrontato con il nome utilizzando l'operatore di confronto “ == ”.
Esempio
In questo esempio, abbiamo tre classi denominate ' La mia classe ”, “ MynewClass ', e ' Esempio ”, dove MyClass funge da classe padre di MynewClass:
Il ' MynewClass ” è una classe figlio in quanto è estesa da “ La mia classe ”:
classe MynewClass si estende La mia classe { }Nel metodo main() della classe “ Esempio ”, dichiareremo e istanziare un oggetto della classe genitore “ La mia classe ”. Quindi controlla se l'oggetto creato appartiene a quale classe; genitore o figlio? Per farlo, chiameremo il ' getClass() ” con l'oggetto creato e confrontare il valore risultante con i nomi delle classi padre e figlio usando le condizioni if-else-if:
pubblico classe Esempio {pubblico statico vuoto principale ( Corda [ ] arg ) {
MyClass myclassObj = nuovo La mia classe ( ) ;
Se ( miaclassOggetto getClass ( ) == La mia classe. classe ) {
Sistema . fuori . println ( 'L'oggetto 'myclassObj' è un tipo di 'MyClass'' ) ;
} altro Se ( miaclassOggetto getClass ( ) == MynewClass. classe ) {
Sistema . fuori . println ( 'L'oggetto 'myclassObj' è un tipo di 'MynewClass'' ) ;
}
}
}
L'output indica che l'oggetto ' miaclassOggetto ” appartiene alla classe genitore denominata “ La mia classe ”:
Ora, vai verso la prossima sezione!
Metodo 4: ottenere il tipo di oggetto classe definito dall'utente utilizzando l'operatore 'instanceof'.
Simile alle classi predefinite, per le classi definite dall'utente, puoi anche ottenere il tipo di oggetto usando il ' istanza di operatore.
Sintassi
La sintassi è riportata di seguito:
Qui, il “ istanza di ” l'operatore verificherà se il “ miaclassOggetto ” è un'istanza di “ La mia classe ' o no.
Esempio
Utilizzeremo ora le stesse classi che abbiamo creato nell'esempio menzionato in precedenza. L'unica differenza è che useremo il ' istanza di ” per verificare se l'istanza dell'oggetto creata appartiene alla classe padre o figlio:
pubblico statico vuoto principale ( Corda [ ] arg ) {
MyClass myclassObj = nuovo La mia classe ( ) ;
Se ( miaclassOggetto istanza di La mia classe ) {
Sistema . fuori . println ( 'L'oggetto 'myclassObj' è un'istanza di 'MyClass'' ) ;
} altro Se ( miaclassOggetto istanza di MynewClass ) {
Sistema . fuori . println ( 'L'oggetto 'myclassObj' è un'istanza di 'MynewClass'' ) ;
}
}
}
L'output fornito mostra che il ' istanza di ” l'operatore ha convalidato il tipo dell'oggetto come “ La mia classe ”:
Abbiamo compilato tutti i metodi relativi all'ottenimento del tipo di oggetto in Java.
Conclusione
Per ottenere un tipo di oggetto in Java, puoi usare il ' getClass() ” o il “ istanza di operatore. Questi metodi possono essere utilizzati per controllare i tipi di oggetti sia per le classi predefinite che per quelle definite dall'utente. Il metodo getClass() restituisce il nome della classe mentre l'operatore 'instanceof' restituisce un valore booleano, dove ' VERO ” indica che l'oggetto appartiene a quella classe specificata; altrimenti restituisce “ falso ”. Questo articolo ha fornito tutti i metodi per ottenere il tipo di oggetto in Java.