When to catch java.lang.Error?

error-handling, exception, java

Solution

Generally, never.

However, sometimes you need to catch specific errors.

If you're writing framework-ish code (loading 3rd party classes), it might be wise to catch `LinkageError` (no class def found, unsatisfied link, incompatible class change).

I've also seen some stupid 3rd-party code throwing subclasses of `Error`, so you'll have to handle those as well.

By the way, I'm not sure it isn't possible to recover from `OutOfMemoryError`.

Problem

In what situations should one catch `java.lang.Error` on an application?

Original source

Related problems