在阅读Java语言规范时,我发现了一些我无法理解的符号。例如这一个
设C是一个类型声明(§4.12.6,§8.1,§9.1),具有零个或多个类型参数(§4.4)F1,...,Fn,它们具有相应的边界B1,...,Bn。该类型声明定义了一组参数化类型(第4.5节)C2,其中每个参数类型Ti都在所有类型的范围内,这些类型是相应边界中列出的所有类型的子类型。也就是说,对于Bi中的每个束缚型Si,Ti是Si的子类型[F1:= T1,...,Fn:= Tn]。
什么是Si [F1:= T1,...,Fn:= Tn]?怎么看?有人知道吗?感谢...
答案 0 :(得分:1)
相同的规范描述了第2章中的符号。
答案 1 :(得分:1)
请参阅此错误thread。特别是这句话准确地解释了你的要求:
因此,给定一个泛型类型声明C,类型C只在当前形成良好 如果T1<:B1,T2<:B2 ... Tn<:Bn。
希望它能让你更好地理解。
基本上,符号本身告诉您每个参数类型Fi实际上都分配给子类型Ti。
答案 2 :(得分:0)
这是当前的Java规范:
http://download.oracle.com/otn-pub/jcp/jls-7-mr3-fullv-oth-JSpec/JLS-JavaSE7-Full.pdf
我找不到您上面引用的参考文献。
如果不了解您引用的段落所说的内容,我们无法更好地解释符号。
我最好的猜测是:
每个Java“方法”都有一个“签名”列出该函数的参数
每个论点都有一个“类型”(例如“T1”),它是合法值的“有界范围”(例如“B1..BN”)。
我建议你看看第4章:“类型,值和变量”。