下面这段代码,为什么第二行和第三行的第二 /三个参数都是 kotlin.Unit,而不是 kotlin.Int 和 kotlin.String
fun main(){
println(Foo::foo.parameters)
println(Foo2::foo.parameters)
println(Foo3::foo.parameters)
}
class Foo{
fun foo(x: Int, y: String): Boolean{
return true
}
}
class Foo2{
fun foo(x: Int, y: String): Unit{
return
}
}
class Foo3{
fun foo(x: Int, y: String){
return
}
}
输出
[instance of fun Foo.foo(kotlin.Int, kotlin.String): kotlin.Boolean, parameter #1 x of fun Foo.foo(kotlin.Int, kotlin.String): kotlin.Boolean, parameter #2 y of fun Foo.foo(kotlin.Int, kotlin.String): kotlin.Boolean]
[instance of fun Foo2.foo(kotlin.Int, kotlin.String): kotlin.Unit, parameter #1 x of fun Foo2.foo(kotlin.Int, kotlin.String): kotlin.Unit, parameter #2 y of fun Foo2.foo(kotlin.Int, kotlin.String): kotlin.Unit]
[instance of fun Foo3.foo(kotlin.Int, kotlin.String): kotlin.Unit, parameter #1 x of fun Foo3.foo(kotlin.Int, kotlin.String): kotlin.Unit, parameter #2 y of fun Foo3.foo(kotlin.Int, kotlin.String): kotlin.Unit]