Instanceof

Preciso implementar um método que receba como parâmtros um objeto e uma classe e retorne verdadeiro caso o objeto seja do tipo da classe ou false caso contrário. Exemplo:

public boolean isInstanceOf(Object object, Class clazz) { return (object instanceof clazz); }

Ao tentar compilar esse código, ocorre o seguinte erro:

cannot find symbol
symbol : class clazz

Alguma sugestão?

public boolean isInstanceOf(Object object, Class clazz) {
    if (object == null) return false;
    else return clazz.isAssignableFrom (object.getClass());
}

so uma duvida Class é algum tipo?
Vc so pode usar instanceof para aquilo que passa no teste É-UM.

agora esse seu Class clazz nunca vi na vida… de onde vc tirou isso?

LPJava, o tipo é java.lang.Class, que é normalmente usado em reflection. Você se lembra do “Class.forName”?

Thingol,

Com a sua dica acabei descobrindo o método isInstance. Preferi usar esse.

public static boolean isInstanceOf(Object object, Class clazz) { return clazz.isInstance(object); }

Grato!

Puxa, é mais fácil mesmo. Eu só me lembrava do “isAssignableFrom”, que não é tão intuitivo assim.

[quote=thingol]LPJava, o tipo é java.lang.Class, que é normalmente usado em reflection. Você se lembra do “Class.forName”?
[/quote]
puts que vacilo… eh nao sabia nao thingol…