【问题标题】:Kotlin syntactic sugar: make var all private in constructorKotlin 语法糖:在构造函数中将 var 设为私有
【发布时间】:2019-01-11 23:32:44
【问题描述】:

我是 kotlin 的新手,对它包含的所有有用的语法糖和功能感到惊讶。

但是每当我声明一个构造函数时,我都必须独立地将我的所有字段设为私有。

class Result(private val startTime: String?, private val stopTime: String?, 
             private val niveau: Int, private val contraction: String?,
             private val VPcount: Int, private val VNcount: Int, 
             private val FPcount: Int, private val FNcount: Int) {...}

有什么办法可以写出这样的东西吗?

class Result(private {val startTime: String?, val stopTime: String?, 
             val niveau: Int, val contraction: String?,
             val VPcount: Int, val VNcount: Int, 
             val FPcount: Int, val FNcount: Int}) {...}

我在the doc 中找不到任何关于此的信息...

【问题讨论】:

    标签: constructor kotlin private


    【解决方案1】:

    目前没有办法做到这一点。默认可见性是公开的,您只能在每个属性的基础上更改它。

    也许您的类可以实现一个不公开所有这些属性的接口,并且您可以将它的实例作为该类型传递给客户端代码 - 尽管我不知道您的确切情况和要求。

    【讨论】:

    • 我是这么想的,但你永远无法确定它是不存在还是错过了。谢谢
    猜你喜欢
    • 2018-04-01
    • 1970-01-01
    • 2020-12-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-26
    • 1970-01-01
    相关资源
    最近更新 更多