형식 매개 변수가 아닌 추상 형식을 사용하고 싶습니다. 내 일반적인 클래스 생성자에서스칼라 클래스 생성자 및 추상 형식
, 나는 일반적인 유형의 매개 변수를 갖고 싶어하지만, 코드는 컴파일되지 않습니다 :
class SomeOtherClass(val s: S){
type S
}
스칼라 컴파일러 오류 "를 찾을 수 없습니다 타입 S"입니다
을 내가 추상 형식 대신 형식 매개 변수를 사용하는 경우, 다음 작품 : 나는이하려는 경우
class SomeClass[T](val t: T){
//...
}
합니까 스칼라 힘이 나, 추상적 인 형태가 아닌 유형의 매개 변수를 사용하여 생성자의 일반 매개 변수?
다른 방법이 있습니까?
재미있게 충분히'새로운 SomeClass (5.asInstanceOf [SomeClass # S]) {type S = Int}'인스턴스를 생성 할 수 있습니다. 안전성이 없다는 것을 유의하십시오. S는 여전히 캐스트에서 정의되지 않습니다. – Kaito
기본적으로 제대로하기 위해서는 다른 두 답변을 살펴 봐야합니까? –
@AntKutschera 예. – Nicolas