I denne opplæringen vil du lære om Java-forekomst av operatør i detalj ved hjelp av eksempler.
Den instanceof
operatør i Java brukes til å sjekke hvorvidt en gjenstand er et eksempel på en spesiell klasse eller ikke.
Dens syntaks er
objectName instanceOf className;
Her, hvis objectName er en forekomst av className, returnerer operatøren true
. Ellers kommer den tilbake false
.
Eksempel: Java-forekomst av
class Main ( public static void main(String() args) ( // create a variable of string type String name = "Programiz"; // checks if name is instance of String boolean result1 = name instanceof String; System.out.println("name is an instance of String: " + result1); // create an object of Main Main obj = new Main(); // checks if obj is an instance of Main boolean result2 = obj instanceof Main; System.out.println("obj is an instance of Main: " + result2); ) )
Produksjon
navn er en forekomst av String: true obj er en forekomst av Main: true
I eksemplet ovenfor har vi laget et variabelnavn av String
typen og et objekt obj fra hovedklassen.
Her har vi brukt instanceof
operatøren til å sjekke om navn og obj er forekomster av henholdsvis String
og hovedklassen. Og operatøren kommer tilbake true
i begge tilfeller.
Merk : I Java String
er det en klasse i stedet for en primitiv datatype. For å lære mer, besøk Java String.
Java-forekomst under arv
Vi kan bruke instanceof
operatøren til å sjekke om gjenstander i underklassen også er en forekomst av superklassen. For eksempel,
// Java Program to check if an object of the subclass // is also an instance of the superclass // superclass class Animal ( ) // subclass class Dog extends Animal ( ) class Main ( public static void main(String() args) ( // create an object of the subclass Dog d1 = new Dog(); // checks if d1 is an instance of the subclass System.out.println(d1 instanceof Dog); // prints true // checks if d1 is an instance of the superclass System.out.println(d1 instanceof Animal); // prints true ) )
I eksemplet ovenfor har vi opprettet en underklasse Dog som arver fra superklassen Animal. Vi har laget et objekt d1 av hundeklassen.
Legg merke til uttrykket inne i utskriftsuttalelsen,
d1 instanceof Animal
Her bruker vi instanceof
operatøren for å sjekke om d1 også er en forekomst av superklassen Animal.
Java-forekomst i grensesnitt
Den instanceof
Operatøren er også brukt for å kontrollere om et objekt av en klasse er også en forekomst av grensesnittet implementert av klassen. For eksempel,
// Java program to check if an object of a class is also // an instance of the interface implemented by the class interface Animal ( ) class Dog implements Animal ( ) class Main ( public static void main(String() args) ( // create an object of the Dog class Dog d1 = new Dog(); // checks if the object of Dog // is also an instance of Animal System.out.println(d1 instanceof Animal); // returns true ) )
I eksemplet ovenfor implementerer hundeklassen dyregrensesnittet. Legg merke til uttrykket i utskriftsuttalelsen,
d1 instanceof Animal
Her er d1 en forekomst av hundeklasse. Den instanceof
operatør kontrollerer om d1 er også en forekomst av grensesnittet dyr.
Merk : I Java arves alle klassene fra Object
klassen. Så forekomster av alle klassene er også en forekomst av Object
klassen.
I forrige eksempel, hvis vi sjekker,
d1 instanceof Object
Resultatet blir true
.