方法分类


0. infix 符号

1. 本地方法

2. 成员方法

3. 通用方法

4. 内联函数inline function

  1. 扩展方法

6.高阶方法

0. infix 符号

这是个关键字

  • 定义方式
  • 使用: 省略点号,括号
infix fun String.add(name:String):String{
    return "$this and name is $name"
}
var add="This is an example".add("Niebin")//调用
println(add)

1. 本地方法

方法内定义的方法,可以不断嵌套

注意:方法定义在前,使用在后

fun locF(){
    fun locF_B(){
        println("This is test for the local function ,this must be defined before its use.")
    }
    locF_B()
}

2. 成员方法

定义在类的内部

//定义在类中的方法 称为成员方法
class B {
    fun printB(){
        println("This is the class's printB function.")
    }
}

var b=B()
b.printB()//使用

3. 通用方法

带有泛型

fun <T> temp_model(t:T){
    println("This string for T=$t")
}

4. 内联函数inline function

内联的目的就是减轻调用方法开销,直接将代码嵌入调用的地方

注意: 不要内联定义为庞大的函数方法

  • 非内联模式 noinline
inline fun func_inline(){
    println("Just smell but call frequntly")
}

results matching ""

    No results matching ""