Объявления уровня пакета
Функции и аннотации, специфичные для платформы Java.
Типы
Требования к платформе и версии: Общая (1.9)
expect annotation class ImplicitlyActualizedByJvmDeclaration
Эта аннотация помечает объявления Kotlin expect, которые неявно актуализируются Java.
Требования к платформе и версии: JVM (1.9)
actual annotation classImplicitlyActualizedByJvmDeclaration
Эта аннотация помечает объявления Kotlin expect, которые неявно актуализируются Java.
Требования к платформе и версии: JVM (1.6)
annotation class JvmDefaultWithCompatibility
Заставляет компилятор генерировать совместимые методы доступа для аннотированного класса или интерфейса.
Требования к платформе и версии: JVM (1.4)
annotation class JvmDefaultWithoutCompatibility
Запрещает компилятору генерировать совместимые методы доступа для аннотированного класса или интерфейса.
Требования к платформе и версии: Общая (2.2)
expect annotation class JvmExposeBoxed(val jvmName: String = "")
Эта аннотация указывает компилятору предоставлять API функций с inline-классами (а также классов, содержащих их, включая сами inline-классы) в виде их упакованного варианта для эффективного использования из Java.
Требования к платформе и версии: JVM (2.2)
actual annotation class JvmExposeBoxed(val jvmName: String)
Эта аннотация указывает компилятору предоставлять API функций с inline-классами (а также классов, содержащих их, включая сами inline-классы) в виде их упакованного варианта для эффективного использования из Java.
Требования к платформе и версии: Общая (1.0), JVM (1.0)
expect annotation class JvmField
Указывает компилятору Kotlin не генерировать геттеры и сеттеры для этого свойства, а предоставлять его как поле.
Требования к платформе и версии: Общая (1.5), JVM (1.5)
expect annotation class JvmInline
Указывает, что данный value-класс является inline-классом.
Требования к платформе и версии: Общая (1.0), JVM (1.0)
expect annotation class JvmMultifileClass
Указывает компилятору Kotlin сгенерировать многофайловый класс, включив в него как одну из частей функции и свойства верхнего уровня, объявленные в этом файле. Имя соответствующего многофайлового класса задается аннотацией JvmName.
Требования к платформе и версии: Общая (1.0)
expect annotation class JvmName(val name: String)
Задает имя класса или метода Java, генерируемого из этого элемента.
Требования к платформе и версии: JVM (1.0)
actual annotation class JvmName(val name: String)
Задает имя класса или метода Java, генерируемого из этого элемента.
Требования к платформе и версии: Общая (1.0), JVM (1.0)
expect annotation class JvmOverloads
Указывает компилятору Kotlin генерировать для этой функции перегрузки, подставляющие значения параметров по умолчанию.
Требования к платформе и версии: Общая (1.5), JVM (1.5)
expect annotation class JvmRecord
Указывает компилятору пометить класс как record и сгенерировать соответствующие методы toString/equals/hashCode.
Требования к платформе и версии: JVM (1.6)
typealias JvmRepeatable = Repeatable
Делает класс аннотации повторяемым в Java и Kotlin. Повторяемую аннотацию можно применить к одному элементу несколько раз.
Требования к платформе и версии: Общая (1.8), JVM (1.8)
expect annotation class JvmSerializableLambda
Заставляет аннотированную лямбда-функцию реализовывать java.io.Serializable, генерирует удобную реализацию toString и добавляет метаданные отражения.
Требования к платформе и версии: Общая (1.0), JVM (1.0)
expect annotation class JvmStatic
Указывает, что из этого элемента необходимо сгенерировать дополнительный статический метод, если это функция. Если элемент является свойством, необходимо сгенерировать дополнительные статические методы-геттеры и сеттеры.
Требования к платформе и версии: Общая (1.0)
expect annotation class JvmSuppressWildcards(val suppress: Boolean = true)@Target(allowedTargets = [AnnotationTarget.CLASS,AnnotationTarget.FUNCTION, AnnotationTarget.PROPERTY, AnnotationTarget.TYPE ] )
Указывает компилятору генерировать или не генерировать подстановочные знаки для аргументов типа, соответствующих параметрам с вариантностью на месте объявления, например, как у Collection<out T>.
Требования к платформе и версии: JVM (1.0)
actual annotation class JvmSuppressWildcards(val suppress: Boolean = true)@Target(allowedTargets = [AnnotationTarget.CLASS,AnnotationTarget.FUNCTION, AnnotationTarget.PROPERTY, AnnotationTarget.TYPE ] )
Указывает компилятору генерировать или не генерировать подстановочные знаки для аргументов типа, соответствующих параметрам с вариантностью на месте объявления, например, как у E из kotlin.collections.Collection, объявленного с вариантностью out.
Требования к платформе и версии: Общая (1.0), JVM (1.0)
expect annotation class JvmSynthetic
Устанавливает флаг ACC_SYNTHETIC для аннотированной цели в байт-коде Java.
Требования к платформе и версии: Общая (1.0)
expect annotation class JvmWildcard
Указывает компилятору генерировать подстановочный знак для аннотированных аргументов типа, соответствующих параметрам с вариантностью на месте объявления.
Требования к платформе и версии: JVM (1.0)
actual annotation class JvmWildcard
Указывает компилятору генерировать подстановочный знак для аннотированных аргументов типа, соответствующих параметрам с вариантностью на месте объявления.
Требования к платформе и версии: JVM (1.0)
annotation class PurelyImplements(val value: String)
Указывает компилятору Kotlin рассматривать аннотированный класс Java как чистую реализацию данного интерфейса Kotlin. Здесь «чистая» означает, что каждый параметр типа класса становится аргументом типа, не являющимся платформенным типом, для этого интерфейса.
Требования к платформе и версии: Общая (1.0), JVM (1.0)
expect annotation class Strictfp
Помечает метод JVM, сгенерированный из аннотированной функции, как strictfp. Это означает, что точность операций с плавающей точкой, выполняемых внутри метода, необходимо ограничить для обеспечения лучшей переносимости.
Требования к платформе и версии: Общая (1.0), JS (1.1)
expect annotation class@Target(allowedTargets = [AnnotationTarget.FUNCTION,AnnotationTarget.PROPERTY_GETTER, AnnotationTarget.PROPERTY_SETTER ] ) Synchronized
Помечает метод JVM, сгенерированный из аннотированной функции, как synchronized. Это означает, что монитор экземпляра (или, для статических методов, класса), в котором определен метод, защитит его от одновременного выполнения несколькими потоками.
Требования к платформе и версии: JVM (1.0)
actual annotation class Synchronized@Target(allowedTargets = [AnnotationTarget.FUNCTION,AnnotationTarget.PROPERTY_GETTER, AnnotationTarget.PROPERTY_SETTER ] )
Помечает метод JVM, сгенерированный из аннотированной функции, как synchronized. Это означает, что монитор экземпляра (или, для статических методов, класса), в котором определен метод, защитит его от одновременного выполнения несколькими потоками.
Требования к платформе и версии: Общая (1.0), JVM (1.0)
expect annotation class Transient
Помечает резервное поле аннотированного свойства модификатором transient на платформе JVM. Это означает, что оно не входит в сериализованное представление объекта при сериализации с помощью механизма java.io.Serializable.
Требования к платформе и версии: Общая (1.0), JS (1.1)
expect annotation classVolatile
Помечает резервное поле JVM аннотированного свойства var как volatile. Это означает, что чтение и запись в это поле выполняются атомарно, а результаты записи всегда видны другим потокам. Если другой поток считывает значение этого поля (например, через его метод доступа), он видит не только это значение, но и все побочные эффекты, приведшие к его записи.
Требования к платформе и версии: JVM (1.0)
actual annotation class Volatile
Помечает резервное поле JVM аннотированного свойства var как volatile. Это означает, что чтение и запись в это поле выполняются атомарно, а результаты записи всегда видны другим потокам. Если другой поток считывает значение этого поля (например, через его метод доступа), он видит не только это значение, но и все побочные эффекты, приведшие к его записи.
Свойства
Требования к платформе и версии: JVM (1.0)
val <T : Annotation> T.annotationClass: KClass<out T>
Возвращает экземпляр KClass, соответствующий типу этой аннотации.
© 2010–2026 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.jvm/index.html