Acesso ao campo privado Java possível ao ter uma referência?

Me deparei com o seguinte recurso "estranho" hoje - se você tiver uma referência a um objeto da classe A no corpo da classe A, poderá acessar os campos particulares desse objeto - ou seja:

public class Foo{
   private int bar;
   private Foo foo;
   public void f()
   {
       if(foo.bar == bar) // foo.bar is visible here?!
       {
            //
       }
   }
}

Alguém tem uma boa explicação sobre isso?

questionAnswers(7)

yourAnswerToTheQuestion