无法使用init块初始化属性

时间:2019-06-23 08:12:02

标签: kotlin

当我尝试使用init块初始化以下代码中的属性时,出现错误。我知道我可以立即初始化此属性,但是假设我想以某种方式计算该值。

class SomeClass {
    init {
        someVar = 123  // Variable cannot be initialized before declaration 
    }
    var someVar : Int
        set(value) {
            field = value
        }

}

class SomeClass2 {
    var someVar : Int  // Property must be initialized  
        set(value) {
            field = value
        }
    init {
        someVar = 123
    }
}

class SomeClass3 {
    var someVar : Int = 123 // No errors here
        set(value) {
            field = value
        }
}

0 个答案:

没有答案