Kotlin基礎-接口
阿新 • • 發佈:2017-06-23
font 標準 tom 簡潔 on() nal err face class
/*
*
* 接口 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)
}
Kotlin基礎-接口