Простой пример для иллюстрации вопроса: trait WTF[W <: WTF[W]] {
def get : Int
}
trait Zero extends WTF[Zero] {
override def get : Int = 0
}
case object Zero extends Zero
final case c
Предположим, у меня есть базовый класс, клонирование производных классов: class Base
{
public:
virtual Base * clone()
{
return new Base();
}
// ...
};
У меня е
У меня есть общий F-ограниченный признак в Scala. Позволяет мне писать методы, которые возвращают один и тот же базовый тип реализации, супер! Но теперь скажем, что суб-черта также определяет методы,