Я довольно новичок в Scala, но я пытаюсь реализовать следующую ситуацию.Предположим, у меня есть черта:
trait SomeTrait {
def kakaw
}
и два объекта Scala, которые расширяют его:
object SampleA extends SomeTrait {
def kakaw = "Woof"
}
object SampleB extends SomeTrait {
def kakaw = "Meow"
}
Что я хотел бы сделать, это вызвать одну из этих двух объектных функций на основевызов параметризованной функции.Например (и я знаю, что это самая далекая вещь из правильных):
class SomeOther {
def saySomething[T] = T.kakaw
}
Так что я могу сделать что-то вроде:
val s = new SomeOther
s.saySomething[SampleA]
Возможно ли это вообще в Scala?