kotlin支持擴展函數(shù)及擴展屬性,類裝飾器模式,擴展內(nèi)容一般建議單獨維護,使用時只需要在頭部導入包(import package)即可。
擴展函數(shù)
擴展函數(shù)可以在不繼承類的情況下,為類添加新的方法。
擴展函數(shù)只是能夠讓變量點操作該函數(shù)。擴展函數(shù)如果跟原內(nèi)部函數(shù)重名,則優(yōu)先使用原內(nèi)部函數(shù),即不能做到override擴展函數(shù)中可以使用this關鍵字訪問變量
fun Int.add10(): Int { //為Int添加10
return this + 10 //this即為變量
}
fun foo6() {
var i: Int = 10
System.out.println("${i.add10()}") //輸出20
}
擴展屬性
擴展屬性可以理解為擴展類屬性的getter與setter方法。
//選自官方文檔中的demo
val <T> List<T>.lastIndex: Int
get() = size - 1
x