Inspectopedia Help

'instanceof' on 'catch' parameter

Reports cases in which an 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.


void foo(Runnable runnable) { try {; } catch (Throwable throwable) { if (throwable instanceof NoClassDefFoundError) { // warning: 'instanceof' on 'catch' parameter 'throwable' System.out.println("Class not found!"); } } }

Inspection Details

By default bundled with:

IntelliJ IDEA 2024.1, Qodana for JVM 2024.1,

Can be installed with plugin:

Java, 241.16690

Last modified: 29 April 2024