Kotlin开荒小队——从Java到Kotlin

特性1——扩展

2017-12-30  本文已影响5人  doulala

kotlin支持扩展函数扩展属性,类装饰器模式,扩展内容一般建议单独维护,使用时只需要在头部导入包(import package)即可。

扩展函数

扩展函数可以在不继承类的情况下,为类添加新的方法。

  1. 扩展函数只是能够让变量点操作该函数。

  2. 扩展函数如果跟原内部函数重名,则优先使用原内部函数,即不能做到override

  3. 扩展函数中可以使用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

上一篇 下一篇

猜你喜欢

热点阅读