Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> Java

Opérateur instanceof Java

Opérateur d'instance Java

Dans ce didacticiel, vous découvrirez en détail l'opérateur Java instanceof à l'aide d'exemples.

Le instanceof L'opérateur en Java est utilisé pour vérifier si un objet est une instance d'une classe particulière ou non.

Sa syntaxe est

objectName instanceOf className;

Ici, si objectName est une instance de className , l'opérateur renvoie true . Sinon, il renvoie false .

Exemple :instance de Java

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

Sortie

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

Dans l'exemple ci-dessus, nous avons créé une variable nom du String type et un objet obj du Principal classe.

Ici, nous avons utilisé le instanceof opérateur pour vérifier si nom et obj sont des instances du String et Principal classe respectivement. Et, l'opérateur renvoie true dans les deux cas.

Remarque :En Java, String est une classe plutôt qu'un type de données primitif. Pour en savoir plus, visitez Java String.

Instance Java pendant l'héritage

Nous pouvons utiliser le instanceof opérateur pour vérifier si les objets de la sous-classe sont également une instance de la superclasse. Par exemple,

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

Dans l'exemple ci-dessus, nous avons créé une sous-classe Chien qui hérite de la superclasse Animal . Nous avons créé un objet d1 du Chien classe.

À l'intérieur de l'instruction d'impression, notez l'expression,

d1 instanceof Animal

Ici, nous utilisons le instanceof opérateur pour vérifier si d1 est aussi une instance de la superclasse Animal .

Instance Java dans l'interface

Le instanceof L'opérateur est également utilisé pour vérifier si un objet d'une classe est également une instance de l'interface implémentée par la classe. Par exemple,

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

Dans l'exemple ci-dessus, le Chien la classe implémente Animal interface. À l'intérieur de l'instruction d'impression, notez l'expression,

d1 instanceof Animal

Ici, d1 est une instance de Chien classer. Le instanceof l'opérateur vérifie si d1 est aussi une instance de l'interface Animal .

Remarque :En Java, toutes les classes sont héritées du Object classer. Ainsi, les instances de toutes les classes sont également une instance du Object classe.

Dans l'exemple précédent, si nous vérifions,

d1 instanceof Object

Le résultat sera true .


Java

  1. Mot-clé Java final
  2. Classe statique imbriquée Java
  3. Classe anonyme Java
  4. Classe Java Singleton
  5. Réflexion Java
  6. Classe Java ObjectOutputStream
  7. Génériques Java
  8. Classe de fichier Java
  9. Java 9 - Opérateur Diamond de classe interne