Kotlin中有构造函数引用吗?

Kir*_*man 82 kotlin constructor-reference

在Java中,我们有Class::new构造函数引用的语法.我知道,方法有可调用的引用,但构造函数如何?我的一个典型用例是工厂.

Ily*_*kov 113

您可以通过简单地使用来获取构造函数的功能实例::ClassName,就好像它是工厂函数一样.

  • 非常感谢.Idk如果这对任何人都有帮助,但要用Sealed类做这个:`SealedClass :: SubClass` (21认同)
  • @TravisWell 在 Java 中相当于什么?AFAIK 你不能在 Java 中引用特定的构造函数。编译器通过推断(或显式)参数类型自动检测要引用哪个构造函数(通过 Class::new) (3认同)
  • 对辅助构造函数的引用怎么样? (2认同)
  • @TravisWell您可以为不同的构造函数指定值类型。例如,`val a: () -> A = ::A` 或 `val a: (Int) -> A = ::A` (2认同)