Il Kotlin reference dice che posso creare un singleton utilizzando l'oggetto parola chiave in questo modo:Singleton con argomento a Kotlin
object DataProviderManager {
fun registerDataProvider(provider: DataProvider) {
//
}
}
Tuttavia, vorrei passare un argomento a quell'oggetto. Ad esempio un ApplicationContext in un progetto Android.
C'è un modo per farlo?
Questo equivale alla soluzione di Jeremy, ma con una sintassi diversa. Il singleton è ancora creato senza argomenti. – jakk
Se vuoi che funzioni come un costruttore, puoi semplicemente restituire "questo". Ho aggiornato la risposta dimostrando che. – breandan
Ok, ma cosa ti impedisce di usare l'oggetto senza mai chiamare il metodo 'invoke'? – jakk