Sådan implementeres InstanceOf i JAVA?



Denne artikel om InstanceOf i Java introducerer dig til Java instancOf Operator og følger den op med praktisk demonstration.

InstanceOf In er en operatør, der bruges til at kontrollere typen af ​​et objekt. Med andre ord tester det, om objektet er en forekomst af en bestemt klasse eller en grænseflade. Resultatet af en sådan operation er enten Sand eller Falsk

Følgende punkter vil blive dækket i denne artikel,





Fortsætter med denne artikel om instanceOf i Java.

Denne operatør er også kendt som type sammenligningsoperatør , da forekomsten sammenlignes med typen.



Syntaks:

(objekt) forekomst af (type)

Et eksempel på eksempelOf-operatøren kan ses nedenfor:

public class Main {public static void main (String [] args) {Main s = new Main () System.out.println (s instanceof Main)}}

Produktion



sand

I eksemplet er det output, der returneres til brugeren sand , dvs. “ s ”Er en forekomst af klasse Main.

Eksempel

Et objekt af typen underklasse er også en type overordnet klasse.

I det følgende eksempel udvider Rock musik. Objektet med Rock kan henvises enten til Rock eller Music klasse.

klasse Musik {} klasse Rock udvider musik {// Rock arver musik offentlig statisk ugyldig main (String args []) {Rock r = ny Rock () System.out.println (r instans af Rock)}}

Produktion

sand

Fortsætter med denne artikel om instanceOf i Java.

Brug af en variabel med nulværdi

klasse Musik {offentlig statisk ugyldig hoved (String args []) {Musik m = null System.out.println (m forekomst af musik) // falsk}}

I eksemplet ovenfor har den definerede variabel en nulværdi.

hvordan man får array længde i javascript

Den returnerede output er således falsk.

Produktion

falsk

Følgende punkt skal bemærkes, når du bruger operatoren instanceOf:

Fortsætter med denne artikel om instanceOf i Java.

Et overordnet objekt er ikke en forekomst af barn

klasse Forælder {} klasse Barn udvider Forælder {} klasse Hoved {offentlig statisk ugyldigt hoved (String [] args) {Forælder p = ny Forælder () hvis (p eksempel på barn) System.out.println ('p er en forekomst af barn ') ellers System.out.println (' p er ikke en forekomst af barn ')}}

Produktion

P er ikke et eksempel på et barn

Fortsætter med denne artikel om instanceOf i Java.

Downc forbløffende

Når der henvises til et objekt i overordnet klasse i en underklasse, kaldes metoden downcasting.

Ved downcasting direkte returnerer compileren en kompileringsfejl.

Rock r = ny musik () // kompileringsfejl

Ved brug af typecasting kastes ClassCastException ved kørsel.

Rock r = (Rock) ny musik () // kompilering vellykket, men ClassCastException kastet

Den eneste metode, hvormed downcasting er mulig, er at bruge instansen af ​​operatoren.

klasse Musik {} klasse Rock udvider musik {metoden med statisk ugyldighed (musik m) {hvis (m forekomst af rock) {Rock r = (Rock) m // downcasting System.out.println ('Downcasting lykkedes')}} offentlig statisk tomrum main (String [] args) {Music m = new Rock () Rock.method (m)}}

Produktion

Downcasting vellykket

Fortsætter med denne artikel om instanceOf i Java.

Forståelse af eksempel:

Metoden instans kan forstås mere eksplicit ved eksemplerne nedenfor:

Dette eksempel gør brug af en grænseflade:

interface Instance {} klasse S implementerer Instance {public void s () {System.out.println ('First method')}} klasse T implementerer Instance {public void t () {System.out.println ('Second method') }} klasse Invoke {void invoke (Instance i) {// upcasting if (i instanceof S) {S s = (S) i // Downcasting ss ()} if (i instanceof T) {T t = (T) i // Downcasting tt ()}} klasse Main {public static void main (String args []) {Instance i = new T () Invoke v = new Invoke () v.invoke (i)}}

Resultatet af eksemplet er som følger:
Anden metode

Dette eksempel demonstrerer dette koncept på en præcis måde. Her er forældreklassen Instrument, og de to barneklasser er guitar og klaver:

Java-program til Fibonacci-serier
klasse Instrument {} klasse Guitar udvider Instrument {} klasse Klaver udvider Instrument {} klasse Main {offentlig statisk ugyldig hoved (String [] args) {Instrument i = nyt instrument () Guitar g = ny guitar () Klaver p = nyt klaver ( ) System.out.println (g eksempel på instrument) System.out.println (p eksempel på instrument) System.out.println (i eksempel på guitar) System.out.println (i eksempel på klaver) i = g System.out.println ( i eksempel på guitar) System.out.println (i eksempel på klaver) i = p System.out.println (i eksempel på guitar) System.out.println (i eksempel på klaver)}}

Outputtet er som følger:

sand

sand

falsk

falsk

sand

falsk

falsk

sand

Sådan findes typen af ​​et objekt effektivt. Instansen Af-operatøren viser sig at være ret nyttig, da metoderne udføres korrekt.

Således er vi nået til en afslutning på denne artikel om 'instanceOf in Java'. Hvis du ønsker at lære mere, skal du tjekke Java Training af Edureka, et betroet online læringsfirma. er designet til at træne dig til både kerne- og avancerede Java-koncepter sammen med forskellige Java-rammer som Hibernate & Spring.

Har du et spørgsmål til os? Nævn det i kommentarsektionen på denne blog, og vi vender tilbage til dig hurtigst muligt.