Я пытаюсь объявить метод в абстрактном классе, который получает массив универсального типа T. Таким образом:
abstract class Circle[-T] extends Shape[T] {
def draw(points: Array[T]): Unit
}
Проблема, которую я получаю, состоит в том, что компилятор Scala жалуется на:
Контравариантный тип T встречается в инвариантной позиции в массиве [T] значений значений
Итак, есть ли способ решить эту проблему, кроме следующего?
def draw[U <: T](points: Array[U]): Unit
Как примечание, мне также нужно расширить этот класс в Java.