mirror of
https://github.com/jlengrand/kotlin.git
synced 2026-05-09 00:21:47 +00:00
45 lines
692 B
Kotlin
Vendored
45 lines
692 B
Kotlin
Vendored
// FILE: JavaBaseClass.java
|
|
|
|
public class JavaBaseClass {
|
|
|
|
private String field = "fail";
|
|
|
|
protected String getFoo() {
|
|
return field;
|
|
}
|
|
|
|
protected void setFoo(String foo) {
|
|
field = foo;
|
|
}
|
|
}
|
|
|
|
// FILE: kotlin.kt
|
|
|
|
package z
|
|
|
|
import JavaBaseClass
|
|
|
|
class A {
|
|
@JvmField var foo = "fail"
|
|
|
|
companion object : JavaBaseClass() {
|
|
@JvmStatic fun test(): String {
|
|
return runSlowly {
|
|
foo = "OK"
|
|
foo
|
|
}
|
|
}
|
|
}
|
|
}
|
|
fun runSlowly(f: () -> String): String {
|
|
return f()
|
|
}
|
|
|
|
fun box(): String {
|
|
val a = A()
|
|
a.foo = "Kotlin"
|
|
if (a.foo != "Kotlin") return "fail"
|
|
|
|
return A.test()
|
|
}
|