Какие есть методы жизненного цикла Activity и как они отрабатывают ?
Спросят с вероятностью 60%
Методы жизненного цикла Activity представляют собой набор коллбэков, которые вызываются системой при изменении состояния
Основные методы жизненного цикла:
1️⃣`onCreate(Bundle savedInstanceState)`
✅Этот метод вызывается при первом создании Activity. Здесь вы должны выполнить все начальную настройку — например, создать пользовательский интерфейс, инициализировать некоторые данные класса. Это место для всего, что должно произойти один раз за время жизни.
✅Пример:
2️⃣`onStart()`
✅Вызывается, когда
3️⃣`onResume()`
✅Вызывается непосредственно перед тем, как
4️⃣`onPause()`
✅Вызывается, когда система собирается продолжить или возобновить другую
5️⃣`onStop()`
✅Вызывается, когда
6️⃣`onRestart()`
✅Вызывается после того, как
7️⃣`onDestroy()`
✅Этот метод вызывается перед уничтожением
Как они отрабатывают
Жизненный цикл начинается с вызова
Методы жизненного цикла Activity — это специальные функции, которые вызываются системой в определенные моменты жизни
👉 Можно посмотреть примеры как отвечают люди на этот вопрос, или перейти к списку 1078 вопросов на Android разработчика. Ставь 👍 если нравится контент
🔐 База собесов | 🔐 База тестовых
Спросят с вероятностью 60%
Методы жизненного цикла Activity представляют собой набор коллбэков, которые вызываются системой при изменении состояния
Activity. Эти методы предоставляют возможность управлять поведением приложения при создании, остановке, восстановлении или уничтожении. Понимание и правильное использование этих методов критически важно для создания надежных и эффективных приложений.Основные методы жизненного цикла:
1️⃣`onCreate(Bundle savedInstanceState)`
✅Этот метод вызывается при первом создании Activity. Здесь вы должны выполнить все начальную настройку — например, создать пользовательский интерфейс, инициализировать некоторые данные класса. Это место для всего, что должно произойти один раз за время жизни.
✅Пример:
setContentView(R.layout.activity_main); устанавливает разметку пользовательского интерфейса для Activity.2️⃣`onStart()`
✅Вызывается, когда
Activity становится видимым для пользователя. Это следует за onCreate() (если он запускается впервые) или onRestart() (если он возвращается к взаимодействию с пользователем после его остановки).3️⃣`onResume()`
✅Вызывается непосредственно перед тем, как
Activity начинает взаимодействовать с пользователем. В этот момент он находится на переднем плане (на экране). Это последний метод, который вызывается перед тем, как он начнет получать ввод данных от пользователя.4️⃣`onPause()`
✅Вызывается, когда система собирается продолжить или возобновить другую
Activity. Этот метод используется для остановки динамических элементов, которые могли быть запущены во время onResume() или для освобождения ресурсов, которые могут быть нужны другим.5️⃣`onStop()`
✅Вызывается, когда
Activity больше не видимо пользователю, потому что другое Activity было возобновлено и покрыло его. Это может быть использовано для выполнения более "тяжеловесной" очистки ресурсов.6️⃣`onRestart()`
✅Вызывается после того, как
Activity было остановлено, но снова начинает запускаться для взаимодействия с пользователем. onRestart() восстанавливает его состояние в том виде, в каком оно было перед тем, как было остановлено.7️⃣`onDestroy()`
✅Этот метод вызывается перед уничтожением
Activity. Это последний вызов, который он получает. Здесь можно освободить все ресурсы, которые не были освобождены автоматически системой.Как они отрабатывают
Жизненный цикл начинается с вызова
onCreate() и проходит через серию стадий, включая onStart(), onResume(), onPause(), onStop(), и, в конечном итоге, onDestroy(). В какой-то момент, если Activity останавливается, но позже должно быть восстановлено, вызывается onRestart(), за которым следуют onStart() и onResume(). Важно понимать, что каждый метод предназначен для определенной стадии жизни Activity и предоставляет возможность для выполнения соответствующих действий, таких как инициализация, пауза, восстановление и очистка ресурсов.Методы жизненного цикла Activity — это специальные функции, которые вызываются системой в определенные моменты жизни
Activity, чтобы разработчики могли правильно управлять ресурсами и интерфейсом пользователя. Они обеспечивают плавное создание, видимость, взаимодействие, паузу и уничтожение Activity.👉 Можно посмотреть примеры как отвечают люди на этот вопрос, или перейти к списку 1078 вопросов на Android разработчика. Ставь 👍 если нравится контент
🔐 База собесов | 🔐 База тестовых
👍28❤3🔥1🎉1
Для чего нужен data class ?
Спросят с вероятностью 60%
Классы данных (data class) предназначены для хранения данных. Основная их задача — упростить создание классов, которые будут использоваться преимущественно для хранения данных, не добавляя при этом лишнего шаблонного кода. Чтобы определить класс данных, достаточно добавить ключевое слово
Особенности и преимущества:
1️⃣Автоматическая генерация функций:
✅
✅
✅
✅
Зачем это нужно?
Его использование позволяет существенно сократить количество шаблонного кода, который разработчикам приходится писать для классов, предназначенных для хранения данных. Это упрощает создание моделей данных и повышает читабельность кода, делая его более компактным и понятным.
Пример:
В этом примере определен класс данных
Без использования
👉 Можно посмотреть примеры как отвечают люди на этот вопрос, или перейти к списку 1078 вопросов на Android разработчика. Ставь 👍 если нравится контент
🔐 База собесов | 🔐 База тестовых
Спросят с вероятностью 60%
Классы данных (data class) предназначены для хранения данных. Основная их задача — упростить создание классов, которые будут использоваться преимущественно для хранения данных, не добавляя при этом лишнего шаблонного кода. Чтобы определить класс данных, достаточно добавить ключевое слово
data перед объявлением класса.Особенности и преимущества:
1️⃣Автоматическая генерация функций:
✅
equals()/hashCode(): Для сравнения объектов по содержимому, а не по ссылкам.✅
toString(): Для представления объекта в виде строки в удобочитаемом формате.✅
componentN(): Для деструктуризации объекта на его составные части.✅
copy(): Для создания копии объекта с возможностью изменять некоторые свойства.Зачем это нужно?
Его использование позволяет существенно сократить количество шаблонного кода, который разработчикам приходится писать для классов, предназначенных для хранения данных. Это упрощает создание моделей данных и повышает читабельность кода, делая его более компактным и понятным.
Пример:
data class User(val name: String, val age: Int)
В этом примере определен класс данных
User с двумя свойствами: name и age. Kotlin автоматически сгенерирует для этого класса методы equals(), hashCode(), toString(), компонентные функции для каждого свойства и метод copy().Без использования
data class, пришлось бы вручную реализовать все эти методы, что ведет к увеличению объема кода и его сложности.Data class используются для упрощения создания классов, предназначенных для хранения данных. Они автоматически генерируют необходимые методы, что позволяет сделать код более чистым, удобным для чтения и поддержки. Это идеальное решение для моделей данных, где основная цель класса — это хранение данных.👉 Можно посмотреть примеры как отвечают люди на этот вопрос, или перейти к списку 1078 вопросов на Android разработчика. Ставь 👍 если нравится контент
🔐 База собесов | 🔐 База тестовых
👍11❤4🔥1