Какие сообщения будут выведены в логи, если Activity пройдет через стандартный жизненный цикл но в onCreate есть метод finish после которого есть лог о финише

«Какие сообщения будут выведены в логи, если Activity пройдет через стандартный жизненный цикл но в onCreate есть метод finish после которого есть лог о финише» — вопрос из категории Android компоненты, который задают на 23% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

onCreate()
onDestroy()

После вызова finish() в onCreate() Activity немедленно завершается, пропуская все остальные методы жизненного цикла (onStart(), onResume() и т.д.). Лог о финише после finish() не будет выведен, так как выполнение кода прерывается.

Пример:

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    finish()  // Activity завершается здесь
    Log.d("TAG", "This won't be logged")  // Не выполнится
}