Что такое использование корпуса вторичных конструкторов в абстрактных классах?

Рассмотрим этот код:

abstract class Foo(val s: String) {
  def this(i: Int) = this("" + (i+2))
}

Насколько я понимаю, конструкторы не наследуются, а вторичные конструкторы не могут быть вызваны из подклассов с подклассами Super Как в Java.

Они просто бесполезным артефактом или есть какая-то разумное использование для этой конструкции?

14
задан Joachim Sauer 31 August 2011 в 10:11
поделиться