Какие типы интерфейсов для преобразования объектов в Android вы знаете?

В Android для преобразования объектов часто используются следующие интерфейсы:

Короткий ответ

Что ответить на собеседовании

В Android для преобразования объектов часто используются следующие интерфейсы:

Подробный разбор

Ответ с пояснениями

В Android для преобразования объектов часто используются следующие интерфейсы:

  • Parcelable — интерфейс для сериализации объектов с целью передачи между компонентами (например, между Activity или Service). Он более эффективен, чем Serializable, так как оптимизирован под Android.
  • Serializable — стандартный Java-интерфейс для сериализации объектов. Используется реже из-за меньшей производительности.
  • TypeAdapter (в библиотеках Gson) — интерфейс для кастомного преобразования объектов в JSON и обратно.
  • Converter (в Retrofit) — интерфейс для преобразования HTTP-ответов в объекты и наоборот.

Пример реализации Parcelable:

class User(val name: String, val age: Int) : Parcelable {
    constructor(parcel: Parcel) : this(
        parcel.readString() ?: "",
        parcel.readInt()
    )

    override fun writeToParcel(parcel: Parcel, flags: Int) {
        parcel.writeString(name)
        parcel.writeInt(age)
    }

    override fun describeContents(): Int = 0

    companion object CREATOR : Parcelable.Creator<User> {
        override fun createFromParcel(parcel: Parcel): User = User(parcel)
        override fun newArray(size: Int): Array<User?> = arrayOfNulls(size)
    }
}

Практика в реальном времени

Подготовьтесь к следующему собеседованию

Interview Boost учитывает вакансию, резюме и технологии и помогает сформулировать ответ прямо во время интервью.

Начать подготовку