Создайте пустой конструктор для класса Scala - PullRequest
1 голос
/ 10 февраля 2020

Если у меня есть класс case, подобный этому:

case class Foo(s : String, k : Int)

Как мне указать для этого пустой конструктор? Причина, по которой мне это нужно, заключается в том, что я хочу передать значение этого класса в Java API, который требует, чтобы этот класс имел пустой конструктор. Я должен указать значения по умолчанию для этого? Я думаю, что должен, у меня нет выбора.

1 Ответ

5 голосов
/ 10 февраля 2020

Вы должны иметь возможность добавить новый конструктор к case class:

case class Foo(s : String, k : Int) {
  def this() = this("default", 0)
}

val foo = new Foo()

Спасибо Марио Гали c за проверку того, что он создает соответствующий конструктор в Java.

...