kotlin接口的定义和使用

1、kotlin定义接口

kotlin使用关键字 interface 来定义接口
接口可以有属性和函数两个元素组成。
接口函数是可以实现的

interface Human{
//属性元素
val gender:Int
fun human(){
//具体实现
}
}

2、接口使用

class Woman:Human{
override fun human() {
super.human()

}
override var gender: Int
    get() = 100
    set(value) {}

}

class Man(override var gender: Int) :Human{
override fun human() {
super.human()

}

}

var woman = Woman()
woman.gender = 0
woman.human()
Man(1).human()

日志输出
woman,s woman()
man,s man()

3、属性使用

interface China{
val name:String
}

interface ZheJiang : China{
val allName:String
val easyName:String
override val name: String
get() = "allNameeasyName"
}

class HangZhou : ZheJiang{
override val allName: String
get() = "浙江"
override val easyName: String
get() = "浙"
fun test(){
println(name)
}
}

使用
HangZhou().test()
日志输出
浙江 浙

4、函数覆盖问题

interface Xihu{
fun play(){
println("Xihu-play")
}
}

interface Scenicspot{
fun play(){
println("Scenicspot-play")
}
}

class LongXiangQiao : Xihu,Scenicspot{
override fun play() {
super<Xihu>.play()
super<Scenicspot>.play()

}

}

/**
* 方法覆盖
*/
LongXiangQiao().play()

日志输出
Xihu-play
Scenicspot-play

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容