Dlaczego prymitywne typy, takie jak Int, są usuwane z Object w Scali?

W Scali,

{ x: Option[Int] => x }
   .getClass
   .getMethod("apply", classOf[Option[_]])
   .getGenericParameterTypes

zwracaArray(scala.Option<java.lang.Object>). Początkowo spodziewałem się zobaczyć zamiast tegoArray(scala.Option<scala.Int>), ale ja to widzęscala.Int jest klasą wartości (rozciąga sięAnyVal) „których instancje nie są reprezentowane jako obiekty przez podstawowy system hosta”.

Nadal nie rozumiem kasowaniaObject, chociaż. Czy nie byłoby to o wiele bardziej przydatnejava.lang.Integer?

questionAnswers(1)

yourAnswerToTheQuestion