특수 클래스 용 클래스 객체를 가져와야합니다. 예 :스칼라 - 특수 클래스 용 클래스 가져 오기
import breeze.linalg.DenseVector
val compileTimeClass = classOf[DenseVector[Double]]
println(compileTimeClass)
val denseVector = DenseVector(0.5, 1.0, 1.0, 0.5)
println(denseVector.getClass)
출력은 다음과 같습니다
내가 제대로 이해한다면class breeze.linalg.DenseVector
class breeze.linalg.DenseVector$mcD$sp
는, 스칼라는 런타임에 DenseVector의 전문 버전을 만들고있다? Kryo와 직렬화하기 위해 이러한 특수 클래스 중 하나를 등록해야하므로이 문제는 저에게 중요한 문제입니다.
DenseVector의 특수 인스턴스에서 getClass를 호출하는 것 이외에 특수화 된 유형의 Class 객체를 가져 오는 방법이 없습니까?
DenseVector를 수정할 수 있습니까? – talex
아니요. DenseVector는 Spark ML에서 사용되는 Breeze 라이브러리에 있습니다. 나도 myslef를 만들지 않아, ML API가 나를 위해 그것을 않습니다. –
음 ...''DenseVector '를'kryo '로 등록하면됩니다. 'DenseVector [A]'를 다룰 수 있어야합니다.'A '도'kryo'에 등록되어 있어야합니다. –