Недавно я столкнулся с загадочной проблемой в проекте Android, который я описал здесь здесь. Я как-то решил проблему, но до сих пор не знаю точной причины этого.
Скажем, я хочу вызвать функцию foo() во внутреннем классе. Вопрос в том, какая разница между его прямым вызовом, например
foo();
или вызов его с помощью экземпляра внешнего класса
OuterClass.this.foo();
Кроме того, я буду признателен, если кто-нибудь сможет проверить мой последний question, связанный с этим, и дать мне понять, почему возникает ошибка. Большое спасибо.
PS: Я где-то читал, что нестатический внутренний класс всегда будет содержать экземпляр внешнего класса. Поэтому он будет вызывать внешнюю функцию, используя этот экземпляр, если я использую только foo()?