Как вы уже догадались, это статический вызов метода.
Блок кода, следующий за ним, является лямбда-выражением, которое передается функции.(Если последний параметр является лямбда-выражением, Kotlin позволяет поставить его после скобок - и поскольку в этом случае других параметров нет, вы можете полностью удалить скобки. В этом случае это может показаться странным, но это может помочь написатьполезные методы, которые похожи на синтаксис языка, что отлично подходит, например, для DSL.)
Другая необычная вещь в этом случае - это то, что вызываемый метод - это Java.Java не имеет функциональных типов, но работает вокруг нее, имея «функциональные интерфейсы» (интерфейсы с одним абстрактным методом);Затем лямбды реализуют этот метод.Kotlin делает то же самое при вызове Java, поэтому размещенный вами код вызывает TestUtil.test () и передает ему экземпляр интерфейса ThrowingBiConsumer;экземпляр, который реализует соответствующий метод с кодом в фигурных скобках.