2017-06-12 21 views
3

我試圖做一個簡單的POJO在科特林(波科?)類,有一個默認的空構造函數和一個帶參數的構造函數的二次,即飼料性能定義默認的構造函數,並在科特林二級構造,具有性能

這不會給我firstNamelastName屬性:

class Person() { 

    constructor(firstName: String?, lastName: String?) : this() 
} 

這讓我的屬性,但它們實例化後會沒有設置:

class Person() { 

    constructor(firstName: String?, lastName: String?) : this() 

    var firstName: String? = null 
    var lastName: String? = null 
} 

這給了我一個編譯錯誤說:「二級構造函數的參數‘變種’是不允許的。」:

class Person() { 

    constructor(var firstName: String?, var lastName: String?) : this() 
} 

那麼,這是怎麼完成的?我怎樣纔能有一個默認的構造函數和二級構造函數的參數和屬性?

回答

5

你可以只是一個主構造與具有default values參數:

class Person(var firstName: String? = null, var lastName: String? = null) 
+0

哇。這很優雅。謝謝! – MPelletier