7
Quando i generici Java richiedono <? estende T> invece di <T> e c'è qualche svantaggio di commutazione?
Dato il seguente esempio (utilizzando JUnit con i corrispondenti Hamcrest): Map<String, Class<? extends Serializable>> expected = null; Map<String, Class<java.util.Date>> result = null; assertThat(result, is(expected)); Questo non viene compilato con la assertThatfirma del metodo JUnit di: public static <T> void assertThat(T actual, Matcher<T> matcher) Il messaggio di errore del compilatore è: …