Kotlin基础-接口

/*
*
* 接口 interface:方法、属性或一段功能的“蓝本”
*仅仅是规定实现的标准(抽象的)
* 通常用于对类进行附加功能,可以让类本身保持简洁的定义
* 通过实现1个或N个接口组合,来实现非继承的功能增强
* */
//接口定义:interface 接口名{属性或方法}
interface Livable{
val hasSkill:Boolean
}
interface ChinaLivable{
//接口中属性只有类型定义,不可初始化
val hasJboffer:Boolean
//接口中的属性可以有get,通常用于单纯增加一个常量属性
val visa:String
get() = "工作签证"
//接口中的变量属性
var city:String

//接口中的方法
fun speakChinese()
//接口中的方法可以有默认实现,通常指该方法的固定不变的
fun handleGuanxi(){
println("在中国非常重视人际关系")
}
var Bank:Int

}

open class Person{
var name=""
}
//继承父类,并实现多个接口
class ForigenChinses:Person(),Livable,ChinaLivable{
override val hasSkill = true
override val hasJboffer = true
override var city = ",,,"

override fun speakChinese() {
print("我叫${this.name}")
}
override var Bank=100
}

fun main(args: Array<String>) {
val tom=ForigenChinses()
tom.name="TOM"
tom.city="上海"
tom.speakChinese()
tom.handleGuanxi()
println(tom.visa)
println(tom.hasSkill)

}
原文地址:https://www.cnblogs.com/my334420/p/7070868.html