Kā iegūt objekta veidu Java?

Ka Iegut Objekta Veidu Java



Objekts ir fiziska vienība, kurai ir savs stāvoklis un uzvedība, un tas darbojas kā unikāls Java klases gadījums. Tas. Ja objekta izcelsme ir no avota, tiek uzskatīts, ka ir lietderīgi pārbaudīt objekta tipu. Turklāt objekta veida pārzināšana ir ļoti svarīga, strādājot ar kolekciju, kurā ir dažādi objekti, vai ja ir nepieciešams izpildīt loģisko darbību ar tāda paša veida mainīgajiem.

Šis raksts palīdzēs jums apgūt metodi Java objekta veida iegūšanai.

Kā iegūt objekta veidu Java?

Lai iegūtu iepriekš definēta vai lietotāja definēta klases objekta tipu Java, varat izmantot:







  • getClass() metodi
  • instanceof operators

Tagad mēs pārbaudīsim katru no minētajām metodēm pa vienam!



1. metode: iegūstiet iepriekš definēta klases objekta veidu, izmantojot metodi getClass().

Programmā Java mums ir iepriekš definētas klases, piemēram, iesaiņojuma klases, piemēram, String, Double, Integer un daudzas citas. Dažreiz mums ir jāpārbauda objekta tips, izmantojot iepriekš definētas klases. Šim nolūkam Java piedāvā “ getClass() ” metode, kas pieder pie “ Objekts ” klase.



Sintakse
'Sintakse' getClass() ” metode ir dota šādi:





x. getClass ( )

Šeit “ getClass() ' metode atgriezīs norādītās klases ' x ” objekts.

Piemērs
Šajā piemērā mēs izveidosim virknes tipa objektu ar nosaukumu ' x ” satur šādu vērtību:



Stīga x = 'Sveiki' ;

Pēc tam mēs izdrukāsim paziņojumu, izmantojot “ System.out.println() ” metode:

Sistēma . ārā . println ( 'x pieder?' ) ;

Visbeidzot, mēs iegūsim objekta veidu ' x ', zvanot uz ' getClass() ” metode:

Sistēma . ārā . drukāt ( x. getClass ( ) ) ;

Izvade parāda, ka izveidotais mainīgais pieder Java String klasei:

Apskatīsim citu metodi objekta veida iegūšanai, izmantojot operatoru “instanceof”.

2. metode: iegūstiet iepriekš definēta klases objekta veidu, izmantojot operatoru “instanceof”.

Varat arī izmantot ' instanceof ” operatoru, lai pārbaudītu objekta tipu Java programmā. Šis operators atgriež Būla vērtību, kas norāda, vai objekts ir vai nav konkrētās klases gadījums.

Sintakse
'Sintakse' instanceof ” ir šāds:

x instanceof Vesels skaitlis

Šeit, ' x ” ir objekts un „ Vesels skaitlis ” ir iepriekš definēta Java iesaiņojuma klase. ' instanceof ” operators pārbauda, ​​vai objekts pieder pie minētās klases vai nē, un atgriež Būla vērtību.

Piemērs
Šajā piemērā mums ir objekts ' x no Veselu skaitļu klases ar ' 5 ” kā tā vērtību:

Vesels skaitlis x = 5 ;

Pēc tam mēs izdrukāsim paziņojumu, izmantojot “ System.out.println() ” metode:

Sistēma . ārā . drukāt ( 'x ir veselu skaitļu klases gadījums?' ) ;

Tagad mēs pārbaudīsim, vai objekts ir veselu skaitļu klases gadījums vai nē:

Sistēma . ārā . drukāt ( x instanceof Vesels skaitlis ) ;

Tiek parādīta izvade ' taisnība 'kā objekts' x ” ir veselu skaitļu klases piemērs:

Šajā brīdī jums var rasties jautājums, kā iegūt lietotāja definēta klases objekta veidu. Tālāk sniegtā sadaļa jums palīdzēs šajā jautājumā.

3. metode: iegūstiet lietotāja definēta klases objekta veidu, izmantojot metodi getClass().

Varat arī iegūt lietotāja definētā klases objekta veidu, izmantojot “ getClass() ” metode. Šādā gadījumā mēs salīdzināsim objektu ar klases nosaukumu, izmantojot “ == ” salīdzināšanas operators.

Sintakse
Norādītajam nolūkam sintakse ' getClass() ” metode ir norādīta šādi:

mana klaseObj. getClass ( ) == Mana klase. klasē

Šeit “ getClass() ' metodi sauc ' mana klaseObj ' objekts ' Mana klase un pēc tam salīdzināt ar nosaukumu, izmantojot salīdzināšanas operatoru == ”.

Piemērs
Šajā piemērā mums ir trīs klases ar nosaukumu ' Mana klase ”, “ Mana jaunā klase ', un ' Piemērs ”, kur MyClass darbojas kā MynewClass vecāku klase:

klasē Mana klase { }

' Mana jaunā klase ” ir bērnu klase, jo tā ir paplašināta no „ Mana klase ”:

klasē Mana jaunā klase pagarina Mana klase { }

Klases galvenajā() metodē ' Piemērs ”, mēs deklarēsim un izveidosim vecākklases objektu Mana klase ”. Pēc tam pārbaudiet, vai izveidotais objekts pieder pie kuras klases; vecāks vai bērns? Lai to izdarītu, mēs izsauksim “ getClass() ” metodi ar izveidoto objektu un salīdziniet iegūto vērtību ar vecāku un bērnu klašu nosaukumiem, izmantojot if-else-if nosacījumus:

publiski klasē Piemērs {
publiski statisks nederīgs galvenais ( Stīga [ ] args ) {
MyClass myclassObj = jauns Mana klase ( ) ;
ja ( mana klaseObj. getClass ( ) == Mana klase. klasē ) {
Sistēma . ārā . println ( 'Objekts 'myclassObj' ir 'MyClass' veids' ) ;
} cits ja ( mana klaseObj. getClass ( ) == Mana jaunā klase. klasē ) {
Sistēma . ārā . println ( 'Objekts 'myclassObj' ir 'MynewClass' veids' ) ;
}
}
}

Izvade norāda, ka objekts ' mana klaseObj ” pieder vecāku klasei ar nosaukumu “ Mana klase ”:

Tagad dodieties uz nākamo sadaļu!

4. metode: iegūstiet lietotāja definēta klases objekta veidu, izmantojot operatoru “instanceof”.

Līdzīgi kā iepriekš definētām klasēm, lietotāja definētām klasēm varat iegūt arī objekta veidu, izmantojot “ instanceof ” operators.

Sintakse
Sintakse ir norādīta zemāk:

mana klaseObj instanceof Mana klase

Šeit “ instanceof ' operators pārbaudīs, vai ' mana klaseObj ' ir '' gadījums Mana klase ' vai nē.

Piemērs
Tagad mēs izmantosim tās pašas klases, kuras esam izveidojuši iepriekš minētajā piemērā. Vienīgā atšķirība ir tā, ka mēs izmantosim instanceof ” operatoru, lai pārbaudītu, vai izveidotā objekta instance pieder vecākajai vai pakārtotajai klasei:

publiski klasē Piemērs {
publiski statisks nederīgs galvenais ( Stīga [ ] args ) {
MyClass myclassObj = jauns Mana klase ( ) ;
ja ( mana klaseObj instanceof Mana klase ) {
Sistēma . ārā . println ( 'Objekts 'myclassObj' ir 'MyClass' gadījums' ) ;
} cits ja ( mana klaseObj instanceof Mana jaunā klase ) {
Sistēma . ārā . println ( 'Objekts 'myclassObj' ir 'MynewClass' gadījums' ) ;
}
}
}

Dotā izvade parāda, ka “ instanceof ' operators apstiprināja objekta veidu kā ' Mana klase ”:

Mēs esam apkopojuši visas metodes, kas saistītas ar objekta tipa iegūšanu Java.

Secinājums

Lai iegūtu objekta veidu Java, varat izmantot “ getClass() 'metode vai ' instanceof ” operators. Šīs metodes var izmantot, lai pārbaudītu objektu tipus gan iepriekš definētām, gan lietotāja definētām klasēm. Metode getClass() atgriež klases nosaukumu, savukārt operators 'instanceof' atgriež Būla vērtību, kur ' taisnība ” norāda, ka objekts pieder tai norādītajai klasei; pretējā gadījumā tas atgriežas ' viltus ”. Šajā rakstā ir sniegtas visas metodes, kā iegūt objekta tipu Java.