Czy w Kotlinie są odniesienia do konstruktorów?

103

W Javie mamy Class::newskładnię odwołań do konstruktorów. Wiem, istnieją wywoływalne odwołania do metod, ale co z konstruktorami? Typowym przypadkiem użycia dla mnie byłyby fabryki.

Kirill Rakhman
źródło

Odpowiedzi:

142

Możesz uzyskać instancję funkcji dla konstruktora, po prostu używając ::ClassName, tak jakby to była funkcja fabryczna.

Ilya Ryzhenkov
źródło
25
Bardzo zobowiązany. Sprawdź, czy to komuś pomoże, ale aby to zrobić z klasami zamkniętymi, zrób to:SealedClass::SubClass
aProperFox
A co z odwołaniami do drugorzędnych konstruktorów?
Travis Well
@TravisCo byłoby odpowiednikiem w Javie? AFAIK nie możesz odwoływać się do konkretnego konstruktora w Javie. Kompilator automatycznie wykrywa, do którego konstruktora należy odwoływać się (przez Class :: new) na podstawie wywnioskowanych (lub jawnych) typów argumentów
Andrey