конструкторы классов scala и абстрактные типы

Я хочу использовать абстрактный тип, а не параметр типа.

В моем конструкторе универсальных классов я хочу иметь параметр универсального типа, но код не компилируется:

class SomeOtherClass(val s: S){
    type S
}

Ошибка компилятора scala: «не найден :тип S»

. Если я использую параметр типа вместо абстрактного типа, тогда это работает:

class SomeClass[T](val t: T){
    //...
}

Вынуждает ли scala использовать параметр типа, а не абстрактный тип, если я хочу иметь общий параметр в конструкторе?

Есть ли другой способ сделать это?

11
задан Mechanical snail 7 August 2012 в 11:58
поделиться