Карточка Junior Java-интероп обновлено

Платформенный тип

Вопрос

Что такое платформенный тип T!?

Попробуйте сами

Ответьте про себя или вслух, потом откройте ответ и сверьтесь.

Показать ответ и разбор

Коротко

Тип значения из Java без аннотаций nullability. Kotlin разрешает обращаться с ним и как с T, и как с T?, не проверяя на null.

Ответ

Тип значения из Java без аннотаций nullability. Kotlin разрешает обращаться с ним и как с T, и как с T?, не проверяя на null. Присвоение в non-null переменную вставит проверку и даст NPE на месте. Защита: явно присваивать в T? или размечать Java-код @Nullable/@NonNull.

Разбор

Тип значения из Java без аннотаций nullability. Kotlin разрешает обращаться с ним и как с T, и как с T?, не проверяя на null. Присвоение в non-null переменную вставит проверку и даст NPE на месте. Защита: явно присваивать в T? или размечать Java-код @Nullable/@NonNull.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме