繁体   English   中英

附带对象和具有默认值的函数

[英]companion object and function with default value

我有一个带有默认值isEnabled: Boolean = true的类isEnabled: Boolean = true在函数getCustomClass

class CustomClass(_className: String, _isEnabled: Boolean) {

    private val className: String = _className
    private val isEnabled: Boolean = _isEnabled

    companion object {
        fun getCustomClass(className: String, isEnabled: Boolean = true): CustomClass {
            return CustomClass(className, isEnabled)
        }
    }
}

为什么不能使用此构造函数:

CustomClass.Companion.getCustomClass(MyClass.class.getSimpleName());

看来您是从Java调用此函数。 Java不支持默认参数。

您可以将@JvmOverloads添加到函数中,以便它生成可以从Java调用的所有其他重载方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM