package p1;
public class MyClass1 {
protected static String str = "ss1";
}
package p2;
import p1.MyClass1;
public class MyClass2 extends MyClass1 {
public static void test(){
MyClass1 mc1 = new MyClass1();
System.out.println(mc1.str);
}
}
私が理解しているように、文字列が別のパッケージからは見えないため、保護されていると宣言されている場合、print ステートメントは機能しません。しかし、 static protected として宣言されている場合に機能するのはなぜですか?