【发布时间】:2014-07-12 08:08:58
【问题描述】:
根据 Cannot Create, Catch, or Throw Objects of Parameterized Types (Java Tutorials):
但是,您可以在
throws子句中使用类型参数:class Parser<T extends Exception> { public void parse(File file) throws T { // OK // ... } }
但你为什么要这样做?你不能在这里构造T。如果在外部构建之后注入T,它的堆栈跟踪不会全错吗?他们是否只是在记录一个碰巧起作用的功能,而不管它是否有用?
【问题讨论】: