Existe-t-il des références de constructeur dans Kotlin?


103

En Java, nous avons la Class::newsyntaxe des références de constructeur. Je sais, il existe des références appelables pour les méthodes, mais qu'en est-il des constructeurs? Un cas d'utilisation typique pour moi serait les usines.

Réponses:


142

Vous pouvez obtenir une instance de fonction pour un constructeur en utilisant simplement ::ClassName, comme s'il s'agissait d'une fonction d'usine.


25
Infiniment reconnaissant. Idk si cela peut aider quelqu'un, mais pour le faire avec les classes scellées, faites:SealedClass::SubClass
aProperFox

Qu'en est-il des références aux constructeurs secondaires?
Travis Well

@TravisWell quel serait un équivalent en Java? AFAIK, vous ne pouvez pas référencer un constructeur spécifique en Java. Le compilateur détecte automatiquement quel constructeur référencer (via Class :: new) par des types d'arguments inférés (ou explicites)
Andrey
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.