これは例ですJava™SCJP認定A包括的プライマー - 第3版 - Khalid A. Mughal Rolf W. Rasmussen私が理解できないサブクラスでもあるサブクラスの保護されたメンバにアクセスすることはできません
他のパッケージで定義されているサブクラスに継承しないと、保護されたメンバーにアクセスできないことがわかります。
しかし、サブクラスのサブクラスからアクセスできない理由はまだ分かりません。
例は
A.javaは以下
package packageA;
public class A {
protected int z;
}
B.java
package packageB;
import packageA.A;
public class B extends A {
void action(A obj1, B obj2, C obj3) {
z = 10; // z in B - Works
obj1.z = 10; // Won't work for obvious reason
obj2.z = 10; // z in B - Works
obj3.z = 10; // z in C - Works
}
}
class C extends B {
void action(A obj1, B obj2) {
z = 10; // Works
obj1.z = 10; // Won't work for obvious reason
obj2.z = 10; // z in B - WHY DOESN'T THIS WORK?????
}
}
これは学問的な練習ですか、本当にこのようなコードを書こうとしていますか? – jiggy
@jiggy ** Java™SCJP認定Aプログラマーズガイドの包括的な入門書第3版Khalid A. Mughal Rolf W. Rasmussen **の例です。理解できません。 –
著者はA、Bなどのクラス名を使用した例を提供しないことを願っています。 – Joeblackdev