[英]How to created correctly a secondary constructor for kotlin
我正在開發一個應用程序,我在其中管理應用程序用戶提供的不同服務。
所以,我想創建一個輔助構造函數,我可以在其中為服務添加價格。 關於我在不同論壇上閱讀的內容,正確的方法是委托給 this() 調用主構造函數的屬性,而在我的例子中,輔助構造函數負責新屬性作為價格。
所以我嘗試做這樣的事情:
@kotlinx.serialization.Serializable
data class Service(
var status: String?,
var type: String,
) : Serializable {
//TODO: Crear onstructor secundario para instanciar
// los service mostrados en el publishFragment.
constructor(
status: String,
type: String,
price:Int)
: this(status, type){
}
}
但是我不知道如何在沒有實現第一個構造函數的情況下設置價格。
我猜
在數據類中,主構造函數必須設置所有值。 在您的情況下,您可以只使用具有默認價格值的主構造函數:
data class Service(
val type: String,
val status: String? = null,
val price: Int? = null
)
您當然可以添加輔助構造函數而不是使用默認值,它只會使用 null 值調用主構造函數。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.