Почему я могу получить доступ к закрытым членам ссылки на класс

Я видел много вопросов о доступе к закрытым членам окружающего класса. Однако мой вопрос противоположен.

Если у меня есть (в качестве примера) следующий код:

public class A {

   private String outerString = "silly string";

   static class B {
      private final A someA = new A();      

      public void foo() {
         String b = someA.outerString ;
      }
   }
}

Мне интересно, почему это компилируется? Я ожидал бы ошибку в силу способа доступа к «externalString». переменная экземпляра из класса A (через someA.outerString). Я знаю, что внутренний класс может получить доступ к членам включающего класса напрямую с помощью неявного «this» ссылка. Но здесь класс B является статическим, поэтому «this» ссылка не применима.

Ответы на вопрос(3)

Ваш ответ на вопрос