mirror of
https://github.com/jlengrand/kotlin.git
synced 2026-03-10 08:31:29 +00:00
37 lines
786 B
Kotlin
Vendored
37 lines
786 B
Kotlin
Vendored
// IGNORE_BACKEND_FIR: JVM_IR
|
|
// TARGET_BACKEND: JVM
|
|
|
|
// WITH_RUNTIME
|
|
// FILE: JavaClass.java
|
|
|
|
import java.lang.annotation.Retention;
|
|
import java.lang.annotation.RetentionPolicy;
|
|
|
|
public class JavaClass {
|
|
|
|
@Retention(RetentionPolicy.RUNTIME)
|
|
@interface Foo {
|
|
int value();
|
|
}
|
|
|
|
@Foo(KotlinClass.FOO_INT)
|
|
public String test() throws NoSuchMethodException {
|
|
return KotlinClass.FOO_STRING +
|
|
JavaClass.class.getMethod("test").getAnnotation(Foo.class).value();
|
|
}
|
|
}
|
|
|
|
// FILE: kotlinClass.kt
|
|
|
|
class KotlinClass {
|
|
companion object {
|
|
const val FOO_INT: Int = 10
|
|
@JvmField val FOO_STRING: String = "OK"
|
|
}
|
|
}
|
|
|
|
fun box(): String {
|
|
val test = JavaClass().test()
|
|
return if (test == "OK10") "OK" else "fail : $test"
|
|
}
|