Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> Java

Java-instantie van Operator

Java-instantie van Operator

In deze zelfstudie leert u in detail over de Java instanceof-operator met behulp van voorbeelden.

De instanceof operator in Java wordt gebruikt om te controleren of een object een instantie van een bepaalde klasse is of niet.

De syntaxis is

objectName instanceOf className;

Hier, als objectName is een instantie van className , retourneert de operator true . Anders retourneert het false .


Voorbeeld:Java-instantie van

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

Uitvoer

name is an instance of String: true
obj is an instance of Main: true

In het bovenstaande voorbeeld hebben we een variabele gemaakt naam van de String type en een object obj van de Hoofd klasse.

Hier hebben we de instanceof . gebruikt operator om te controleren of naam en obj zijn exemplaren van de String en Hoofd klasse respectievelijk. En de operator retourneert true in beide gevallen.

Opmerking :In Java, String is een klasse in plaats van een primitief gegevenstype. Ga voor meer informatie naar Java String.


Java-instantie van tijdens overerving

We kunnen de instanceof . gebruiken operator om te controleren of objecten van de subklasse ook een instantie van de superklasse zijn. Bijvoorbeeld,

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

In het bovenstaande voorbeeld hebben we een subklasse gemaakt Hond die erft van de superklasse Animal . We hebben een object gemaakt d1 van de Hond klasse.

Let in de printopdracht op de uitdrukking,

d1 instanceof Animal

Hier gebruiken we de instanceof operator om te controleren of d1 is ook een instantie van de superklasse Animal .


Java-instantie van interface

De instanceof operator wordt ook gebruikt om te controleren of een object van een klasse ook een instantie is van de interface die door de klasse is geïmplementeerd. Bijvoorbeeld,

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

In het bovenstaande voorbeeld is de Hond klasse implementeert de Animal koppel. Let in de printopdracht op de uitdrukking,

d1 instanceof Animal

Hier, d1 is een instantie van Hond klas. De instanceof operator controleert of d1 is ook een instantie van de interface Animal .

Opmerking :In Java worden alle klassen overgenomen van de Object klas. Dus instanties van alle klassen zijn ook een instantie van de Object klasse.

Als we in het vorige voorbeeld controleren,

d1 instanceof Object

Het resultaat is true .


Java

  1. Java laatste trefwoord
  2. Java-erfenis
  3. Java geneste statische klasse
  4. Java anonieme klasse
  5. Java Singleton-klasse
  6. Java-reflectie
  7. Java ArrayList-klasse
  8. Java ObjectOutputStream-klasse
  9. Java-generieken
  10. Java-bestandsklasse
  11. Java 9 - Inner Class Diamond Operator