什么是扩展函数
Kotlin提供了扩展函数的功能,使用扩展函数可以扩展一个类的功能不需要继承或者使用装饰者模式。
扩展函数的使用方法
我们可以为一个不能修改的类提供一个新的函数,然后进行调用。
// 在这里我们需要String作为扩展函数,这个前缀叫做接收者类型
// this是接受者对象
fun String.lastChar() : Char = this.get(this.length-1)
在扩展函数添加好之后,就可以调用扩展函数了。
fun main(args: Array<String>) {
println("kotlin".lastChar())
}
// 输出结果为 n
怎么样在Java中调用呢?
public class Test {
public static void main(String[] args) {
// 扩展函数我写在了一个名为Hello.kt的文件里买呢
//在Java中调用的格式为 文件名.扩展函数(参数名)
System.out.println(HelloKt.lastChar("zxf"));
}
}
从Java代码中调用扩展函数可以看出,扩展函数并不会真正的修改类,它将会被便衣为一个静态函数。
总结
使用扩展函数可以给别人的类添加方法,可以平滑地与现在代码继承。