instanceof
expression is used for testing the type of a parameter in a catch
block.
Testing the type of catch
parameters is usually better done by having separate
catch
blocks instead of using instanceof
.
Example:
void foo(Runnable runnable) {
try {
runnable.run();
} catch (Throwable throwable) {
if (throwable instanceof NoClassDefFoundError) { // warning: 'instanceof' on 'catch' parameter 'throwable'
System.out.println("Class not found!");
}
}
}