java.lang.Error and its subclasses represent abnormal conditions, such as OutOfMemoryError, which should only be encountered by the Java Virtual Machine.
public class MyException extends Error { /* ... */ } // Non-Compliant
public class MyException extends Exception { /* ... */ } // Compliant