Kotlin 接口與 Java 8 相似,使用 interface 關鍵字定義接口,容許方法有默認實現:ide
一個類或者對象能夠實現一個或多個接口。函數
輸出結果爲:spa
foo
bar
接口中的屬性只能是抽象的,不容許初始化值,接口不會保存屬性值,實現接口時,必須重寫屬性:code
輸出結果爲:對象
foo
bar
runoob
實現多個接口時,可能會遇到同一方法繼承多個實現的問題。例如:繼承
輸出結果爲:接口
ABbar
實例中接口 A 和 B 都定義了方法 foo() 和 bar(), 二者都實現了 foo(), B 實現了 bar()。由於 C 是一個實現了 A 的具體類,因此必需要重寫 bar() 並實現這個抽象方法。string
然而,若是咱們從 A 和 B 派生 D,咱們須要實現多個接口繼承的全部方法,並指明 D 應該如何實現它們。這一規則 既適用於繼承單個實現(bar())的方法也適用於繼承多個實現(foo())的方法。class