Java泛型 - 不允许 异常

Java泛型 - 不允许 异常 首页 / 泛型入门教程 / Java泛型 - 不允许 异常

泛型类不允许直接或间接扩展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;
   }   
}

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

左耳听风 -〔陈皓〕

硅谷产品实战36讲 -〔曲晓音〕

趣谈网络协议 -〔刘超〕

MySQL实战45讲 -〔林晓斌〕

Elasticsearch核心技术与实战 -〔阮一鸣〕

黄勇的OKR实战笔记 -〔黄勇〕

小马哥讲Spring核心编程思想 -〔小马哥〕

陈天 · Rust 编程第一课 -〔陈天〕

Tony Bai · Go语言第一课 -〔Tony Bai〕

好记忆不如烂笔头。留下您的足迹吧 :)