Java instanceof with changing objects

2020-06-30 05:08发布

问题:

I need a method where i could pass on a parameter which i assume would be a Class (not sure though) and in that method, instanceof would be used to check if x is an instance of the passed Class.

How should i do that? I tried a few things but none worked.

回答1:

How about this:

public boolean checker(Object obj) {
    return obj instanceof SomeClass;
}

or if SomeClass is a parameter:

public boolean checker(Object obj, Class someClass) {
    return someClass.isInstance(obj);
}

or if you want the instance to be someClass and NOT an instance of a subclass of someClass:

public boolean checker(Object obj, Class someClass) {
    return someClass.equals(obj.getClass());
}


回答2:

Use Class.isInstance(Object).