7.方法重载与默认参数

方法重载(跟java一致)
1.名称相同、参数不同的方法
2.跟返回值没有关系
默认参数
1.为函数参数设定一个默认值
2.可以为任意位置的参数设置默认值
3.函数调用产生混淆时用具名参数

class Overloads{
    fun a(int: Int = 0): Int{
        return int
    }
}

fun main(args: Array) {
    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
    }
}

会生成无参的重载方法

你可能感兴趣的:(7.方法重载与默认参数)