为什么参数的私有字段在 Java 6 中对泛型方法可见,但在 Java 7 中却不可见?
2022-09-04 22:25:19
public class Test{
private String _canYouSeeMe = "yes";
<T extends Test> void genericMethod(T hey){
String s = hey._canYouSeeMe;
}
void method(Test hey){
String s = hey._canYouSeeMe;
}
}
当针对JDK 1.6构建时,编译得很好,但是对于1.7,genericMethod()中存在编译器错误:Test._canYouSeeMe字段不可见
这个错误可以通过使_canYouSeeMe受到保护而不是私有来解决,但我只是想知道从1.6到1.7发生了什么变化