【发布时间】:2018-07-20 02:35:24
【问题描述】:
我正在阅读 Java 规范 https://docs.oracle.com/javase/specs/jls/se10/html/jls-4.html#jls-4.10.2 这条线让我很困惑:
D<U1 θ,...,Uk θ>,其中D<U1,...,Uk>是一个泛型类型,它是 泛型 C 和 θ 的直接超类型是 替换 [F1:=T1,...,Fn:=Tn]。
Uk θ 在这里选角吗?替换后D 变成D<(U1)T1,...,(Uk)Tk>?如果是这样,为什么作者在转换语法中省略了Uk θ 中的括号?谢谢!
【问题讨论】:
-
有趣的是,JLS 仁慈地决定取消这种高深莫测的结构;例如,参见 JLS 17 中的同一部分:docs.oracle.com/javase/specs/jls/se17/html/…