我想弄清楚是否有可能。一般情況下,我想要做的是從超類的同伴對象中獲取類類型的子類的......在下面的剪斷,對待__
因爲我需要什麼是否可以從超類中獲取Kotlin子類型?
companion object
{
fun fromSnapshot(snapshot: DataSnapshot): __
{
val model = snapshot.getValue(__)
model.key = snapshot.key
// ...
return model
}
}
一些背景。 .. DataSnapshot
來自Firebase,snapshot.getValue()
需要Class<T>
。如果我試圖創造的,也就是說,一個TestModel
一個實例,代碼將如下
companion object
{
fun fromSnapshot(snapshot: DataSnapshot): TestModel
{
val model = snapshot.getValue(TestModel::java.class)
model.key = snapshot.key
// ...
return model
}
}
我真的不知道,如果我要問在科特林是可能的。我很確定它不在Java中。我討厭提及它,但在Swift中,這可以通過我稱之爲「big-S self」或Self
來實現,它是實例self
的類類型。如果你不知道Swift,self
就相當於Java和Kotlin的this
。
任何幫助將非常感激!
我喜歡它!非常感謝。我是Kotlin的新手,但擅長Java,所以我傾向於做類似Java的風格的事情,但我更喜歡Kotlin風格的約定。需要成爲「Kotlin-y」 – poisondminds