多个通用接口分隔符:“,”或“&”
我一直在使用A<T extends I1, I2>
,但今天我看到A<T extends I1 & I2>
。
这两种表示法有什么区别?
它有不同的含义吗?目的
答案 0 :(得分:14)
A<T extends I1, I2>
是具有两个参数的类型A
T
,必须是I1
I2
您可以将其读作&#34; A&lt;介词&gt;类型T,其延伸I1&lt;介词&gt;类型I2&#34;,
所以SortedMap<Key extends comparable, Value>
是一个&#34;地图,从可比较的类型键到类型值&#34;
A<T extends I1 & I2>
是具有单个参数
的A
类型
T
,其必须是I1
的子类型和I2
的子类型您可以将其读作&#34; A&lt;介词&gt;类型T延伸I1和I2&#34;所以可以读取SortedSerializableSet<T extends Serializable & Comparable>
&#34; T类型的一组有序元素,它们既可序列化又具有可比性&#34;