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() = "easyName"
}

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.play()
super.play()

}

}

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

日志输出
Xihu-play
Scenicspot-play

你可能感兴趣的:(kotlin接口的定义和使用)