Kotlin
anteckningar
Sök…
Förklara en kommentar
Anteckningar är sätt att knyta metadata till koden. För att förklara en kommentar, placera annoteringsmodifieraren framför en klass:
annotation class Strippable
Anteckningar kan ha metaanotationer:
@Target(AnnotationTarget.CLASS, AnnotationTarget.FUNCTION, AnnotationTarget.VALUE_PARAMETER, AnnotationTarget.EXPRESSION)
annotation class Strippable
Annoteringar, som andra klasser, kan ha konstruktörer:
annotation class Strippable(val importanceValue: Int)
Men till skillnad från andra klasser, är det begränsat till följande typer:
- typer som motsvarar Java-primitiva typer (Int, Long etc.);
- strängar
- klasser (Foo :: klass)
- enums
- andra kommentarer
- matriser av ovanstående typer
Meta-annoteringar
När du deklarerar en kommentar kan metainfo inkluderas med följande metaanotationer:
@Target
: specificerar möjliga typer av element som kan kommenteras med anteckningen (klasser, funktioner, egenskaper, uttryck etc.)@Retention
anger om anteckningen lagras i de sammanställda klassfilerna och om den är synlig genom reflektion vid körning (som standard är båda sanna.)@Repeatable
gör det möjligt att använda samma kommentar på ett enda element flera gånger.@MustBeDocumented
anger att anteckningen är en del av det offentliga API: et och bör inkluderas i klassen eller metodsignaturen som visas i den genererade API-dokumentationen.
Exempel:
@Target(AnnotationTarget.CLASS, AnnotationTarget.FUNCTION,
AnnotationTarget.VALUE_PARAMETER, AnnotationTarget.EXPRESSION)
@Retention(AnnotationRetention.SOURCE)
@MustBeDocumented
annotation class Fancy