Встречается на собеседованиях • сегодня

В чем разница между Object из Java и Any из Kotlin

Object в Java — это корневой класс всех классов, все объекты наследуются от него. Он предоставляет базовые методы (equals(), hashCode(), toString() и др.).

Any в Kotlin — аналог Object, но с некоторыми отличиями:

  1. Nullable по умолчанию: Any не включает null, для nullable-типа используется Any?.
  2. Методы-расширения: Kotlin добавляет методы-расширения (let(), also() и др.).
  3. Примитивы: Any включает примитивы (например, Int), так как в Kotlin нет разделения на примитивы и объекты.

Пример:

kotlin
val num: Any = 42       // Int (примитив) как Any  
val str: Any = "Kotlin" // String как Any  
val nullable: Any? = null // Ошибка без '?'  

В Java Object не может содержать примитивы напрямую (только через автоупаковку).

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы