Не объект, а ссылка, и если это не статический внутренний класс.
Да, все верно, потому что нужен доступ к полям и методам внешнего класса.
Если декомпилировать внутренний класс, то можно увидеть, что компилятор добавляет параметр в конструктор - ссылку на внешний класс.