Spec-Zone.ru › Kotlin 1.8

KProperty

kotlin-stdlib / kotlin.reflect / KProperty
Требования к платформе и версии: JVM (1.0), JS (1.1), Native (1.3)
interface KProperty<out V> : KCallable<V>

Представляет свойство, например, объявление именованной val или var переменной. Экземпляры этого класса можно получить с помощью оператора ::.

Дополнительную информацию см. в документации по языку Kotlin.

Параметры

V - тип значения свойства.

Типы

Требования к платформе и версии: JVM (1.0)

Accessor

Представляет аксессор свойства, который является методом get или set объявленным вместе со свойством. Дополнительную информацию см. в документации по языку Kotlin.

interface Accessor<out V>
Требования к платформе и версии: JVM (1.0)

Getter

Метод-геттер свойства объявлен вместе со свойством.

interface Getter<out V> : KProperty.Accessor<V>, KFunction<V>

Свойства

Требования к платформе и версии: JVM (1.0)

getter

Геттер данного свойства, используемый для получения значения свойства.

abstract val getter: KProperty.Getter<V>
Требования к платформе и версии: JVM (1.1)

isConst

true если это свойство является const. Дополнительную информацию см. в документации по языку Kotlin.

abstract val isConst: Boolean
Требования к платформе и версии: JVM (1.1)

isLateinit

true если это свойство является lateinit. Дополнительную информацию см. в документации по языку Kotlin.

abstract val isLateinit: Boolean

Наследуемые свойства

Требования к платформе и версии: JVM (1.1)

isAbstract

true если этот вызов является abstract.

abstract val isAbstract: Boolean
Требования к платформе и версии: JVM (1.1)

isFinal

true если этот вызов является final.

abstract val isFinal: Boolean
Требования к платформе и версии: JVM (1.1)

isOpen

true если этот вызов является open.

abstract val isOpen: Boolean
Требования к платформе и версии: JVM (1.3)

isSuspend

true если это приостанавливающая функция.

abstract val isSuspend: Boolean
Требования к платформе и версии: JVM (1.0)

parameters

Параметры, необходимые для вызова этого вызова. Если этот вызов требует экземпляра this или параметра получателя расширения, они указываются в списке в этом порядке.

abstract val parameters: List<KParameter>
Требования к платформе и версии: JVM (1.1)

typeParameters

Список параметров типа этого вызова.

abstract val typeParameters: List<KTypeParameter>
Требования к платформе и версии: JVM (1.1)

visibility

Видимость этого вызова или null если его видимость нельзя представить в Kotlin.

abstract val visibility: KVisibility?

Наследуемые функции

Требования к платформе и версии: JVM (1.0)

call

Вызывает этот вызов со указанным списком аргументов и возвращает результат. Бросает исключение, если количество указанных аргументов не равно размеру parameters или если их типы не соответствуют типам параметров.

abstract fun call(vararg args: Any?): R
Требования к платформе и версии: JVM (1.0)

callBy

Вызывает этот вызов с указанным сопоставлением параметров и аргументов и возвращает результат. Если параметр не найден в сопоставлении и не является необязательным (как указано в KParameter.isOptional) или его тип не соответствует типу предоставленного значения, выбрасывается исключение.

abstract fun callBy(args: Map<KParameter, Any?>): R

Расширяемые свойства

Требования к платформе и версии: JVM (1.1)

extensionReceiverParameter

Возвращает параметр, представляющий экземпляр получателя расширения, необходимый для вызова данного вызова, или null если этот вызов не является расширением.

val KCallable<*>.extensionReceiverParameter: KParameter?
Требования к платформе и версии: JVM (1.1)

instanceParameter

Возвращает параметр, представляющий экземпляр this необходимый для вызова данного вызова, или null если этот вызов не является членом класса и, следовательно, не принимает такой параметр.

val KCallable<*>.instanceParameter: KParameter?
Требования к платформе и версии: JVM (1.0)

isAccessible

Предоставляет способ подавления проверок доступа JVM для вызова.

var KCallable<*>.isAccessible: Boolean
Требования к платформе и версии: JVM (1.0)

javaField

Возвращает экземпляр Java Field, соответствующий полю хранения данного свойства, или null если свойство не имеет поля хранения.

val KProperty<*>.javaField: Field?
Требования к платформе и версии: JVM (1.0)

javaGetter

Возвращает экземпляр Java Method, соответствующий геттеру данного свойства, или null если свойство не имеет геттера, например, в случае простого приватного val в классе.

val KProperty<*>.javaGetter: Method?
Требования к платформе и версии: JVM (1.1)

valueParameters

Возвращает параметры этого вызова, исключая экземпляр this и параметр получателя расширения.

val KCallable<*>.valueParameters: List<KParameter>

Расширяемые функции

Требования к платформе и версии: JVM (1.3)

callSuspend

Вызывает вызываемый объект в текущем контексте приостановки. Если вызываемый объект не является функцией приостановки, ведет себя как KCallable.call. В противном случае вызывает функцию приостановки с текущим продолжением.

suspend fun <R> KCallable<R>.callSuspend(
    vararg args: Any?
): R
Требования к платформе и версии: JVM (1.3)

callSuspendBy

Вызывает вызываемый объект в текущем контексте приостановки. Если вызываемый объект не является функцией приостановки, ведет себя как KCallable.callBy. В противном случае вызывает функцию приостановки с текущим продолжением.

suspend fun <R> KCallable<R>.callSuspendBy(
    args: Map<KParameter, Any?>
): R
Требования к платформе и версии: JVM (1.1)

findAnnotation

Возвращает аннотацию данного типа на этом элементе.

fun <T : Annotation> KAnnotatedElement.findAnnotation(): T?
Требования к платформе и версии: JVM (1.7)

findAnnotations

Возвращает все аннотации данного типа на этом элементе, включая примененные индивидуально аннотации, а также повторяющиеся аннотации.

fun <T : Annotation> KAnnotatedElement.findAnnotations(): List<T>
fun <T : Annotation> KAnnotatedElement.findAnnotations(
    klass: KClass<T>
): List<T>
Требования к платформе и версии: JVM (1.1)

findParameterByName

Возвращает параметр этого вызываемого объекта с данным именем или null , если такого параметра нет.

fun KCallable<*>.findParameterByName(
    name: String
): KParameter?
Требования к платформе и версии: JVM (1.4)

hasAnnotation

Возвращает true, если этот элемент снабжён аннотацией типа T.

fun <T : Annotation> KAnnotatedElement.hasAnnotation(): Boolean

Наследующие классы

Требования к платформе и версии: JVM (1.0), JS (1.0), Native (1.0)

KMutableProperty

Представляет свойство, объявленное как var.

interface KMutableProperty<V> : KProperty<V>
Требования к платформе и версии: JVM (1.0), JS (1.0), Native (1.0)

KProperty0

Представляет свойство без какого-либо получателя. Такое свойство либо изначально объявлено в контексте без получателя, например, в пакете, либо имеет получатель, привязанный к нему.

interface KProperty0<out V> : KProperty<V>, () -> V
Требования к платформе и версии: JVM (1.0), JS (1.0), Native (1.0)

KProperty1

Представляет свойство, операции над которым принимают одного получателя в качестве параметра.

interface KProperty1<T, out V> : KProperty<V>, (T) -> V
Требования к платформе и версии: JVM (1.0), JS (1.0), Native (1.0)

KProperty2

Представляет свойство, операции над которым принимают двух получателей в качестве параметров, например, расширяющее свойство, объявленное в классе.

interface KProperty2<D, E, out V> : KProperty<V>, (D, E) -> V

© 2010–2023 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.reflect/-k-property/index.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API