如何在kotlin中替换:: new?
在Java中的Disruptor教程之后,他们进行以下调用
Disruptor<LongEvent> disruptor = new Disruptor<>(LongEvent::new, bufferSize, executor);
其中LongEvent
使用没有参数的默认构造函数实例化 – 即。 new LongEvent()
。
Kotlin的等价线在::new
处抛出一个错误。 Kotlin中的::new
什么正确的语法?
# THIS IS INVALID val disruptor = Disruptor<LongEvent>(LongEvent::new, bufferSize, executor)
kotlin中的构造函数引用表达式是::LongEvent
。
构造函数可以像方法和属性一样被引用。 通过使用
::
运算符并添加类名称来引用构造函数。