Как в классе C получить доступ к переменной str внутреннего класса PubInnerClass, которая лежит в классе А, если она protected?
Вот класс А:
package Trash.ModAccess.A;
public class ClassA {
public class PubInnerClass {
protected String str="word";
}
}
Вот класс C:
package Trash.ModAccess.C;
import Trash.ModAccess.A.ClassA;
public class ClassC extends ClassA {
public static void main(String[]args) {
}
}
У вас классы ClassA и ClassC находятся в разных пакетах, чтобы был доступ к строке str из другого пакета, она должны быть public, либо вам нужно использовать Reflection API.
ClassA.PubInnerClass pubInnerClass = new ClassA().new PubInnerClass();
Field field = pubInnerClass.getClass().getDeclaredField("str");
field.setAccessible(true);
String str = (String)field.get(pubInnerClass);
System.out.println(str);
Вывод: word.
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости