Java泛型不允许扩展Exception和Throwable类
下文笔者讲述Java泛型类扩展注意事项,如下所示
java泛型类进行从Exception和Throwable类扩展 例:下面的定义方式"不会被允许" //The generic class InfoClass<T> may not subclass java.lang.Throwable class InfoClass<T> extends Exception {} //The generic class InfoClass<T> may not subclass java.lang.Throwable class InfoClass1<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 InfoClass<T extends Exception> { private int t; public void add(int t) throws T { this.t = t; } public int get() { return t; } }
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。