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

Available in:

IntelliJ IDEA 2023.3, Qodana for JVM 2023.3


Java, 233.SNAPSHOT

Last modified: 13 July 2023