特性1——擴展

kotlin支持擴展函數(shù)擴展屬性,類裝飾器模式,擴展內(nèi)容一般建議單獨維護,使用時只需要在頭部導入包(import package)即可。

擴展函數(shù)

擴展函數(shù)可以在不繼承類的情況下,為類添加新的方法。

  1. 擴展函數(shù)只是能夠讓變量點操作該函數(shù)。

  2. 擴展函數(shù)如果跟原內(nèi)部函數(shù)重名,則優(yōu)先使用原內(nèi)部函數(shù),即不能做到override

  3. 擴展函數(shù)中可以使用this關鍵字訪問變量


fun Int.add10(): Int {  //為Int添加10
    return this + 10  //this即為變量
}

fun foo6() {
    var i: Int = 10
    System.out.println("${i.add10()}") //輸出20
}

擴展屬性

擴展屬性可以理解為擴展類屬性的gettersetter方法。

//選自官方文檔中的demo
val <T> List<T>.lastIndex: Int
    get() = size - 1

x

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • 前言 人生苦多,快來 Kotlin ,快速學習Kotlin! 什么是Kotlin? Kotlin 是種靜態(tài)類型編程...
    任半生囂狂閱讀 26,669評論 9 118
  • 與 C# 和 Gosu 類似, Kotlin也提供了一種,可以在不繼承父類,也不使用類似裝飾器這樣的設計模式的情況...
    郎官人閱讀 685評論 0 0
  • 大家好,我是William李梓峰,歡迎加入我的Kotlin學習之旅。今天是我學習 Kotlin 的第十二天,內(nèi)容是...
    William李梓峰閱讀 608評論 -1 2
  • 少年時,天許可。投愛春山,摘得秋云果。田野激情燒旺火。六月河邊,嬉水全身裸。 老驢車,超負荷。種地開荒,蒙眼還推磨...
    木貞ma閱讀 315評論 0 2
  • 風來了,云卻散了。 花開了,暴雨將至。 我來了,你卻不在了。 最絕望的事兒,莫過于此。 微風拂面,碧海藍天,11月...
    桃子說民宿閱讀 359評論 1 1

友情鏈接更多精彩內(nèi)容