泛型类不允许直接或间接扩展Throwable类。
//泛型类 Box<T> 可能不是 java.lang.Throwable 的子类 class Box<T> extends Exception {} //泛型类 Box<T> 可能不是 java.lang.Throwable 的子类 class Box1<T> extends Throwable {}
不允许方法捕获类型参数的。
public static <T extends Exception, J> void execute(List<J> jobs) { try { for (J job : jobs) {} //compile-time error //Cannot use the type parameter T in a catch block } catch (T e) { //... } }
在throws子句中允许使用类型参数。
class Box<T extends Exception> { private int t; public void add(int t) throws T { this.t=t; } public int get() { return t; } }
参考链接
https://www.learnfk.com/java-generics/java-generics-no-exception.html
标签:Box,java,int,无涯,Throwable,泛型,Java,public From: https://blog.51cto.com/u_14033984/9018355