As a result of changes to section 5.3.5 of the Java Virtual Machine Specification, a `java.lang.IncompatibleClassChangeError` exception is thrown instead of a `java.lang.VerifyError` exception when defining a class whose super class is final and when defining a class that tries to override a final method.