You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Kotlin次级构造函数调用报错:参数匹配失败问题求助

问题排查:Kotlin构造函数调用错误原因解析

嗨,别着急,这个问题其实是个很容易忽略的拼写小错误!

你看你写的二级构造函数里,调用主构造函数时传了一个参数叫isBlesed,但主构造函数里对应的参数明明是isBlessed——你少写了一个字母's'!

Kotlin是强类型语言,参数名称必须完全匹配,所以当你写错参数名时,编译器找不到对应的构造函数参数,就会抛出“没有匹配的构造函数可调用”的错误。

修正后的代码:

class Player (_name: String, var healthPoints: Int, val isBlessed: Boolean, private val isImmortal: Boolean) {
    var name = _name
        get() = field.capitalize()
        private set(value) { field = value.trim() }
    // 这里把isBlesed改成isBlessed就没问题了
    constructor(name: String) : this(name, healthPoints = 100, isBlessed = true, isImmortal = false)
}

补充说明:

这种拼写错误在日常编码里很常见,尤其是长参数名的时候。你可以借助IDE的自动补全功能来避免这类问题,输入到一半时让IDE帮你补全参数名,就能减少手滑写错的概率啦。

内容的提问来源于stack exchange,提问作者Zachary Schiff

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.14 08:18:01