Kotlin基础(4)-->接口

和Java一样,任何一个类最多只能继承一个父类,但是却可以实现任意多个接口。

1.简单使用

首先我们创建一个接口

interface Study {
    fun readBook()
    fun doHomeWork()
}

让Student类继承它

class Student(name: String, age: Int) : Person(name, age), Study {
    override fun readBook() {
        println(name + " is reading")
    }

    override fun doHomeWork() {
        println(name + " is doing homeWork")
    }

}

在Java中继承使用的关键字是extends,实现接口是用的是implements,而在Kotlin中统一使用 : 关键字,中间用逗号分隔。另外接口的后面不需要加括号,因为他没有构造函数可以去调用。

2.额外功能

为了使用更加灵活,Kotlin增加了一个额外的功能:允许接口中定义的函数进行默认实现。

interface Study {
    fun readBook()
    fun doHomeWork(){
        println("我是默认实现")
    }
}

如果接口中的一个函数拥有了函数体,这个函数体中的内容就是它的默认实现。
我们给doHomeWork增加了函数体,那么现在当一个类去继承Study接口时,只会强制要求实现readBook()函数,而doHomeWork则可以自由选择实现或不实现,不实现时就会使用默认的实现逻辑。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章