1
Я хочу создать метод, который принимает параметр типа, очевидно без параметров на его конструкторе, и возвращает объект-фиктивный объект, построенный с помощью этого конструктора. В принципе, какой-то заводской шаблон.Создание объекта из параметра типа в Scala
- Возможно ли это в Скале?
- Это хорошая идея? Любой лучший образец, если это не так?
- Есть ли способ достичь этого только во время компиляции (т. Е. Без отражения)? Пример
Код:
trait Model
class A extends Model
class B extends Model
def dummy[T <: Model] = new T // Fails compilation with "class type required but T found"
dummy[A] // Returns an instance of A
dummy[B] // Returns an instance of B
Вам нужно загрузить JAR с помощью scala-reflection ?, чтобы использовать манифест класса? На Android, отражение Scala в настоящий момент не очень хорошо работает, поэтому я бы хотел не использовать его ... –
Нет, вам не нужно использовать JAR scala-reflection, чтобы использовать манифесты. –
Хм, я получаю «Не найден: Тип /» при попытке этого ... Какую версию Scala вы используете? –