24 lines
358 B
Kotlin
Vendored
24 lines
358 B
Kotlin
Vendored
var result = ""
|
|
|
|
interface A {
|
|
var foo: String
|
|
get() = result
|
|
set(value) {
|
|
result += value
|
|
}
|
|
}
|
|
|
|
abstract class B {
|
|
abstract var foo: Any
|
|
}
|
|
|
|
class C : A, B()
|
|
|
|
fun box(): String {
|
|
val c = C()
|
|
c.foo = "1"
|
|
(c : B).foo = "2"
|
|
(c : A).foo = "3"
|
|
return if (result == "123") "OK" else "Fail: $result"
|
|
}
|