Я определил несколько конструкторов с некоторыми значениями аргументов по умолчанию во всех них.Выглядит правильно (я не вижу никакой двусмысленности), но компилятор Scala (2.8) жалуется:
несколько перегруженных альтернатив конструктора определяют аргументы по умолчанию
Означает ли это, чтоЯ вообще не могу определить значения по умолчанию для перегруженных конструкторов?
Позвольте мне проиллюстрировать ситуацию (конечно, примитивную, но иллюстративную):
class A(subject : Double, factor : Int = 1, doItRight : Boolean = true) {
def this (subject : Int, factor : Int = 1, doItRight : Boolean = true) = {
this(subject.toDouble , factor, doItRight)
}
def this (subject : String, factor : Int = 1, doItRight : Boolean = true) = {
this(subject.toDouble , factor, doItRight)
}
def this () = {
this(defaultSubject)
}
}