open class C { open val p1 = "" } class C1: C() { override val p1 = super.p1 + "" } open class C2: C() { } class C3: C2() { override val p1 = super.p1 + "" } fun main(args: Array) { println(C1().p1) println(C3().p1) }