重複の可能性:
Java 7 にアップグレードした後、ジェネリック クラスの型パラメーター化されたフィールドが非表示になる
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() にコンパイラ エラーがあります: The field Test._canYouSeeMe is not visible
_canYouSeeMe を private ではなく protected にすることでエラーを解決できるのですが、1.6 から 1.7 で何が変わったのか気になります。