方法重载(跟java一致)
1.名称相同、参数不同的方法
2.跟返回值没有关系
默认参数
1.为函数参数设定一个默认值
2.可以为任意位置的参数设置默认值
3.函数调用产生混淆时用具名参数
class Overloads{
fun a(int: Int = 0): Int{
return int
}
}
fun main(args: Array<String>) {
val overloads = Overloads()
overloads.a()
}
java调用
Overloads overloads = new Overloads();
overloads.a();//会报错,java不支持函数给参数赋默认值
要想不报错,需要给kotlin相应的方法加@JvmOverloads
class Overloads{
@JvmOverloads
fun a(int: Int = 0): Int{
return int
}
}
会生成无参的重载方法