➖ Внутри класса доступ к приватной переменной открыт без ограничений;
➖ Вложенный класс имеет полный доступ ко всем (в том числе и приватным) членам содержащего его класса;
➖ Доступ к приватным переменным извне может быть организован через отличные от приватных методов, которые предоставлены разработчиком класса. Например: getX() и setX().
➖ Через механизм рефлексии (Reflection API):
class Victim {
private int field = 42;
}
//...
Victim victim = new Victim();
Field field = Victim.class.getDeclaredField(«field»);
field.setAccessible(true);
int fieldValue = (int) field.get(victim);
//...