mirror of
https://github.com/jlengrand/kotlin.git
synced 2026-05-09 08:31:29 +00:00
59 lines
1.2 KiB
Kotlin
Vendored
59 lines
1.2 KiB
Kotlin
Vendored
// FILE: Base.java
|
|
|
|
public class Base {
|
|
|
|
protected static String BASE_ONLY = "BASE";
|
|
|
|
protected static String baseOnly() {
|
|
return BASE_ONLY;
|
|
}
|
|
|
|
protected static String TEST = "BASE";
|
|
|
|
protected static String test() {
|
|
return TEST;
|
|
}
|
|
|
|
public static class Derived extends Base {
|
|
protected static String TEST = "DERIVED";
|
|
|
|
protected static String test() {
|
|
return TEST;
|
|
}
|
|
}
|
|
}
|
|
|
|
// FILE: Kotlin.kt
|
|
|
|
package anotherPackage
|
|
|
|
import Base.Derived
|
|
import Base
|
|
|
|
class Kotlin : Base.Derived() {
|
|
fun doTest(): String {
|
|
|
|
if ({ TEST }() != "DERIVED") return "fail 1"
|
|
if ({ test() }() != "DERIVED") return "fail 2"
|
|
|
|
if ({ Derived.TEST }() != "DERIVED") return "fail 3"
|
|
if ({ Derived.test() }() != "DERIVED") return "fail 4"
|
|
|
|
if ({ Base.TEST }() != "BASE") return "fail 5"
|
|
if ({ Base.test() }() != "BASE") return "fail 6"
|
|
|
|
|
|
if ({ Base.BASE_ONLY }() != "BASE") return "fail 7"
|
|
if ({ Base.baseOnly() }() != "BASE") return "fail 8"
|
|
|
|
if ({ BASE_ONLY }() != "BASE") return "fail 9"
|
|
if ({ baseOnly() }() != "BASE") return "fail 10"
|
|
|
|
return "OK"
|
|
}
|
|
}
|
|
|
|
fun box(): String {
|
|
return Kotlin().doTest()
|
|
}
|