Kotlin
Oggetti singleton
Ricerca…
introduzione
Un oggetto è un tipo speciale di classe, che può essere dichiarato usando la parola chiave object
. Gli oggetti sono simili a Singletons (uno schema di progettazione) in java. Funziona anche come parte statica di java. I principianti che passano da java a kotlin possono utilizzare questa funzione in modo massiccio, al posto di statici o singleton.
Utilizzare come repalcement di metodi / campi statici di java
object CommonUtils {
var anyname: String ="Hello"
fun dispMsg(message: String) {
println(message)
}
}
Da qualsiasi altra classe, invoca semplicemente la variabile e le funzioni in questo modo:
CommonUtils.anyname
CommonUtils.dispMsg("like static call")
Utilizzare come un singleton
Gli oggetti Kotlin sono in realtà solo singoletti. Il suo vantaggio principale è che non devi usare SomeSingleton.INSTANCE
per ottenere l'istanza del singleton.
In java il tuo singleton ha questo aspetto:
public enum SharedRegistry {
INSTANCE;
public void register(String key, Object thing) {}
}
public static void main(String[] args) {
SharedRegistry.INSTANCE.register("a", "apple");
SharedRegistry.INSTANCE.register("b", "boy");
SharedRegistry.INSTANCE.register("c", "cat");
SharedRegistry.INSTANCE.register("d", "dog");
}
In kotlin, il codice equivalente è
object SharedRegistry {
fun register(key: String, thing: Object) {}
}
fun main(Array<String> args) {
SharedRegistry.register("a", "apple")
SharedRegistry.register("b", "boy")
SharedRegistry.register("c", "cat")
SharedRegistry.register("d", "dog")
}
È molto meno verboso da usare.
Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow