¿Cómo implementar InstanceOf en JAVA?



Este artículo sobre InstanceOf en Java le presentará Java instancOf Operator y lo seguirá con una demostración práctica.

InstanceOf In es un operador, que se utiliza para verificar el tipo de un objeto. En otros términos, prueba si el objeto es una instancia de una clase específica o una interfaz. El resultado de tal operación es Cierto o Falso

En este artículo se cubrirán los siguientes consejos,





Continuando con este artículo sobre instanceOf en Java.

Este operador también se conoce como tipo operador de comparación , ya que la instancia se compara con el tipo.



Sintaxis:

(objeto) instancia de (tipo)

Un ejemplo del operador instanceOf se puede ver a continuación:

public class Main {public static void main (String [] args) {Main s = new Main () System.out.println (s instanceof Main)}}

Salida



cierto

En el ejemplo, la salida devuelta al usuario es cierto , es decir ' s ”Es una instancia de la clase Main.

establecer java classpath windows 7

Ejemplo

Un objeto de tipo subclase también es un tipo de clase padre.

En el siguiente ejemplo, Rock amplía Music. El objeto de Rock puede ser referido por clase de Rock o Música.

class Music {} class Rock amplía Música {// Rock hereda Música public static void main (String args []) {Rock r = new Rock () System.out.println (r instanceof Rock)}}

Salida

cierto

Continuando con este artículo sobre instanceOf en Java.

Usando una variable con valor nulo

class Music {public static void main (String args []) {Music m = null System.out.println (m instanceof Music) // false}}

En el ejemplo anterior, la variable definida tiene un valor nulo.

Por tanto, la salida devuelta es falsa.

Salida

falso

Se debe tener en cuenta el siguiente punto al usar el operador instanceOf:

Continuando con este artículo sobre instanceOf en Java.

Un objeto padre no es una instancia de Child

class Parent {} class Child amplía Parent {} class Main {public static void main (String [] args) {Parent p = new Parent () if (p instanceof Child) System.out.println ('p es una instancia de Child ') else System.out.println (' p no es una instancia de Child ')}}

Salida

P no es una instancia de Child

Continuando con este artículo sobre instanceOf en Java.

Downc asting

Cuando una subclase hace referencia a un objeto de la clase Parent, el método se conoce como downcasting.

Al realizar downcasting directamente, el compilador devuelve un error de compilación.

Rock r = new Music () // error de compilación

Al usar la conversión de tipos, ClassCastException se lanza en el tiempo de ejecución.

Rock r = (Rock) new Music () // compilación exitosa pero se lanzó ClassCastException

El único método por el cual es posible el downcasting es usando el operador instanceof.

cómo hacer pruebas de base de datos
class Música {} clase Rock extiende Música {método vacío estático (Música m) {if (m instancia de Rock) {Rock r = (Rock) m // downcasting System.out.println ('Downcasting Successful')}} public static void main (String [] args) {Music m = new Rock () Rock.method (m)}}

Salida

Downcasting exitoso

Continuando con este artículo sobre instanceOf en Java.

Entendiendo instanceOf:

El método instanceOf puede entenderse más explícitamente mediante los ejemplos que se dan a continuación:

Este ejemplo hace uso de una interfaz:

interfaz Instancia {} clase S implementa Instancia {public void s () {System.out.println ('Primer método')}} clase T implementa Instancia {public void t () {System.out.println ('Segundo método') }} class Invoke {void invoke (Instancia i) {// upcasting if (i instancia de S) {S s = (S) i // Downcasting ss ()} if (i instancia de T) {T t = (T) i // Downcasting tt ()}}} class Main {public static void main (String args []) {Instance i = new T () Invoke v = new Invoke () v.invoke (i)}}

El resultado del ejemplo es el siguiente:
Segundo método

Este ejemplo demuestra este concepto de manera precisa. Aquí, la clase principal es Instrumento y las dos clases secundarias son Guitarra y Piano:

clase Instrumento {} clase Guitarra amplía Instrumento {} clase Piano amplía Instrumento {} clase Principal {public static void main (String [] args) {Instrument i = new Instrument () Guitar g = new Guitar () Piano p = new Piano ( ) System.out.println (g instancia de Instrumento) System.out.println (p instancia de Instrumento) System.out.println (i instancia de Guitarra) System.out.println (i instancia de Piano) i = g System.out.println ( i instancia de Guitarra) System.out.println (i instancia de Piano) i = p System.out.println (i instancia de Guitarra) System.out.println (i instancia de Piano)}}

El resultado es el siguiente:

cierto

cierto

falso

falso

cierto

falso

falso

saltar en c ++

cierto

Así es como se encuentra eficientemente el tipo de objeto. El operador instanceOf demuestra ser bastante útil, dado que los métodos se ejecutan de forma adecuada.

Por lo tanto, hemos llegado al final de este artículo sobre 'instanceOf en Java'. Si desea obtener más información, consulte la capacitación en Java de Edureka, una empresa confiable de aprendizaje en línea. está diseñado para capacitarlo en conceptos básicos y avanzados de Java junto con varios marcos de Java como Hibernate y Spring.

Tienes una pregunta para nosotros? Menciónelo en la sección de comentarios de este blog y nos pondremos en contacto con usted lo antes posible.