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