§4.9
…然后,交集类型与具有空主体,直接超类Ck和直接超接口T1’,…,Tn’的类类型(第8节)具有相同的成员,并在同一包中声明。相交类型出现。
根据我对JLS零件的了解,您的带有类型变量的情况将
<T extends Test>创建以下交集:
package <the same as of Test>;class I extends Test {}因此,当您访问类型的成员时,
T您实际上会访问相交类型的成员
I。由于私有成员永远不会被子类型继承,因此访问此类成员会因编译错误而失败。另一方面,由于交集是事实,因此允许访问package-
private(默认)和受保护成员。
…在出现相交类型的同一包中声明。



