Operador de instancia de Java
Instancia Java del Operador
En este tutorial, aprenderá en detalle sobre el operador java instanceof con la ayuda de ejemplos.
El instanceof
El operador en Java se usa para verificar si un objeto es una instancia de una clase en particular o no.
Su sintaxis es
objectName instanceOf className;
Aquí, si objectName es una instancia de className , el operador devuelve true
. De lo contrario, devuelve false
.
Ejemplo:instancia 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);
}
}
Salida
name is an instance of String: true obj is an instance of Main: true
En el ejemplo anterior, hemos creado una variable nombre de los String
tipo y un objeto obj de la Principal clase.
Aquí, hemos usado el instanceof
operador para comprobar si nombre y obj son instancias del String
y Principal clase respectivamente. Y, el operador devuelve true
en ambos casos.
Nota :En Java, String
es una clase en lugar de un tipo de datos primitivo. Para obtener más información, visite Java String.
Instancia de Java durante la herencia
Podemos usar el instanceof
operador para verificar si los objetos de la subclase también son una instancia de la superclase. Por ejemplo,
// 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
}
}
En el ejemplo anterior, hemos creado una subclase Perro que hereda de la superclase Animal . Hemos creado un objeto d1 del Perro clase.
Dentro de la declaración de impresión, observe la expresión,
d1 instanceof Animal
Aquí, estamos usando el instanceof
operador para comprobar si d1 es también una instancia de la superclase Animal .
Instancia de Java en la interfaz
El instanceof
El operador también se usa para verificar si un objeto de una clase también es una instancia de la interfaz implementada por la clase. Por ejemplo,
// 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
}
}
En el ejemplo anterior, el Perro clase implementa el Animal interfaz. Dentro de la declaración de impresión, observe la expresión,
d1 instanceof Animal
Aquí, d1 es una instancia de Perro clase. El instanceof
el operador comprueba si d1 es también una instancia de la interfaz Animal .
Nota :En Java, todas las clases se heredan del Object
clase. Entonces, las instancias de todas las clases también son una instancia del Object
clase.
En el ejemplo anterior, si marcamos,
d1 instanceof Object
El resultado será true
.
Java