Class IllegalCatchCheck

All Implemented Interfaces:
Configurable, Contextualizable

public final class IllegalCatchCheck extends AbstractCheck
Checks that certain exception types do not appear in a catch statement.

Rationale: catching java.lang.Exception, java.lang.Error or java.lang.RuntimeException is almost never acceptable. Novice developers often simply catch Exception in an attempt to handle multiple exception classes. This unfortunately leads to code that inadvertently catches NullPointerException, OutOfMemoryError, etc.

  • Property illegalClassNames - Specify exception class names to reject. Type is java.lang.String[]. Default value is Error, Exception, RuntimeException, Throwable, java.lang.Error, java.lang.Exception, java.lang.RuntimeException, java.lang.Throwable.

Parent is com.puppycrawl.tools.checkstyle.TreeWalker

Violation Message Keys:

  • illegal.catch
Since:
3.2