Java-esimerkki (esimerkkien kanssa)

Tässä opetusohjelmassa opit operaattorin Java instanceofista yksityiskohtaisesti esimerkkien avulla.

instanceofOperaattori Java käytetään tarkistamaan, onko objekti on esimerkki tietylle vai ei.

Sen syntaksia on

 objectName instanceOf className;

Jos objectName on className-esiintymä, operaattori palaa true. Muuten se palaa false.

Esimerkki: Java instanceof

 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); ) )

Tuotos

 nimi on String: true -objekti on esimerkki Main: true

Yllä olevassa esimerkissä olemme luoneet Stringtyypin muuttujan nimen ja Main-luokan objektin objektin.

Tässä olemme käyttäneet instanceofoperaattoria tarkistaaksemme, ovatko nimi ja obj Stringvastaavasti Main- ja Main-luokan esiintymät . Ja käyttäjä palaa truemolemmissa tapauksissa.

Huomautus : Java-ohjelmassa Stringse on luokka eikä primitiivinen tietotyyppi. Lisätietoja on Java String -sivulla.

Java-instanssi perinnön aikana

Voimme käyttää instanceofoperaattoria tarkistaaksemme, ovatko alaluokan objektit myös yliluokan esiintymiä. Esimerkiksi,

 // 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 ) )

Yllä olevassa esimerkissä olemme luoneet alaluokan koiran, joka perii superluokan eläimestä. Olemme luoneet koiraluokan objektin d1.

Huomaa tulosteen sisällä lauseke,

 d1 instanceof Animal

Tässä käytämme instanceofoperaattoria tarkistaaksemme, onko d1 myös superluokan eläimen esiintymä.

Java-ilmentymä käyttöliittymässä

instanceofOperaattori käytetään myös tarkistaa, onko kohde luokan on myös esimerkki rajapinnan toteuttaa luokan. Esimerkiksi,

 // 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 ) )

Yllä olevassa esimerkissä koiraluokka toteuttaa eläinten käyttöliittymän. Huomaa tulosteen sisällä lauseke,

 d1 instanceof Animal

Tässä d1 on koiraluokan esiintymä. instanceofOperaattori tarkistaa, onko d1 on myös esimerkki käyttöliittymän Animal.

Huomaa : Java-ohjelmassa kaikki luokat peritään Objectluokasta. Joten kaikkien luokkien esiintymät ovat myös Objectluokan esiintymiä .

Jos edellisessä esimerkissä tarkistamme,

 d1 instanceof Object

Tulos on true.

Mielenkiintoisia artikkeleita...