Sobes.tech
Junior

Come determinare se una classe eredita da un'altra classe?

sobes.tech AI

Risposta dell'AI

Utilizzando l'operatore instanceof o il metodo isInstance() della classe Class.

// Classe A
class A {
    //...
}

// Classe B, che eredita da A
class B extends A {
    //...
}

// Creazione di istanze
A instanceA = new A();
B instanceB = new B();

// Verifica con instanceof
boolean isBInstanceOfA = instanceB instanceof A; // true
boolean isAInstanceOfB = instanceA instanceof B; // false

// Verifica con isInstance()
boolean isBInstanceOfAByClass = A.class.isInstance(instanceB); // true
boolean isAInstanceOfBByClass = B.class.isInstance(instanceA); // false