Cambiamento del comportamento nelle eccezioni quando si richiama il metodo Class.getAnnotation()

In precedenza, il metodo java.lang.Class.getAnnotation() generava l'eccezione java.lang.ArrayStoreException non corretta quando l'annotazione conteneva un valore dell'array che faceva riferimento ad una classe mancante. In Java 11 questa chiamata genera un'eccezione java.lang.TypeNotPresentException quando l'annotazione ha un valore dell'array che fa riferimento ad una classe mancante. Valutare la logia nel proprio blocco catch per verificare se è necessario gestire anche TypeNotPresentException o un tipo di eccezione di runtime più generica.

Questa regola contrassegna le chiamate al metodo java.lang.Class.getAnnotation() quando la chiamata al metodo è racchiusa in un'istruzione try con una clausola catch per ArrayStoreException.

Per il Javadoc Class, consultare Class. Per ulteriori informazioni sulle modifiche di Java SE 11, consultare Removed Features and Options in JDK 11.