x: Int) : Base { override fun print() { print(x) } } // Derived は Base 型だが、その機能は b が担うことを示している class Derived(b: Base) : Base by b fun main() { val base = BaseImpl(10) val derived = Derived(base) // print メソッドの呼び出しは、実際には Base 型の base に転送される derived.print() // 10 } 6