import kotlin.reflect.KClass @Retention(AnnotationRetention.RUNTIME) annotation class Ann(val args: Array>) class O class K @Ann(arrayOf(O::class, K::class)) class MyClass fun box(): String { val args = javaClass().getAnnotation(javaClass()).args val argName1 = args[0].simpleName ?: "fail 1" val argName2 = args[1].simpleName ?: "fail 2" return argName1 + argName2 }