Files
kotlin-fork/js/js.translator/testData/inheritance/cases/methodOverride.kt
T
2014-03-11 20:04:00 +04:00

27 lines
492 B
Kotlin

package foo
open class A {
fun f1(): Int {
return 1
}
open fun f2(): Int {
return 3
}
}
class B : A() {
override fun f2(): Int {
return 2
}
}
fun box(): String {
val a = A()
if (a.f1() != 1) return "a.f1() != 1, it: ${a.f1()}"
if (a.f2() != 3) return "a.f2() != 3, it: ${a.f2()}"
val b = B();
if (b.f1() != 1) return "b.f1() != 1, it: ${b.f1()}"
if (b.f2() != 2) return "b.f2() != 2, it: ${b.f2()}"
return "OK"
}