TGViewer
Kotlin Developer Kotlin Developer @kotlinsenior · 6.22K subscribers
Post #1321 483
❓ Чем Any в Kotlin отличается от Object в Java

Any не является полным аналогом java.lang.Object.

В Object 11 методов в классе, в Any только 3 метода: equals(), hashCode() и toString(). При импорте типов Java в Kotlin все ссылки типа java.lang.Object преобразуются в Any. Поскольку Any не зависит от платформы, он объявляет только toString(), hashCode() и equals() в качестве своих членов, поэтому, чтобы сделать другие члены java.lang.Object доступными, Kotlin использует функции расширения.

Несмотря на то, что классы Object и Any имеют сходства (корневые классы иерархии классов), они также имеют и отличия, связанные с языковыми особенностями Kotlin и Java:

1️⃣ Класс Any в Kotlin является не только базовым классом для пользовательских классов, но также и супертипом для всех не-nullable типов данных, включая примитивные. В то время как в Java, класс Object является базовым классом только для пользовательских классов.

2️⃣ Класс Any в Kotlin также имеет nullable версию Any?, которая является супертипом для всех nullable типов данных в Kotlin. В то время как в Java, класс Object не имеет nullable версии.

@KotlinSenior #kotlin
More from @kotlinsenior
  1. Oct 8, 2026Разработчик больше не обязан выполнять каждую задачу вручную. Но сможет ли ИИ-агент действ…
  2. Oct 8, 2026❓ Как работают SAM-conversions Single Abstract Method (SAM) интерфейсы — это интерфейсы то…
  3. Oct 7, 2026Post #1322
  4. Oct 7, 2026Post #1316
  5. Oct 7, 2026Vibrance — естественное смешивание цветов Vibrance — естественное смешивание цветов для Ko…
  6. Oct 7, 2026Post #1314
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →