Java supports throwing exceptions of a generic type, but it is rarely a useful trick. With Java 8, that is changing.