호출 할 때마다 암시 적 개체를 만들어야하고 다른 개체는 함수에 전달 된 개체에 형식 제약 조건을 넣기 만합니다. 일반적으로 암묵적인 표현이 아닌 [T <: Dummy]
이라는 진술을 선호합니다.
암시 적으로는 특정 제약 조건을 충족시키는 경우에만 특정 작업을 수행 할 수있는 유형을 만들고 싶을 때 사용합니다. 따라서, 당신은 List[A]
선언은 다음을 참조하십시오
당신은 어떤 유형을 배치 할 수 있습니다 "라고 말하는 좋은 방법이다
def sum(implicit ev: Numeric[A]) = ...
'A'클래스에서하지만 당신은 '합'이 준수해야 사용하려는 경우 ... "예를 들어 다음의 클래스 정의를 가지고 : 이것은 Foo[Int]
의 몇 가지 유형을 만들기 위해 나에게 옵션을 허용하고 그것을 작동하지만 나를 T
하지 않는 한 클래스의 specialSauce
메소드를 호출을 허용하지 않습니다
class Foo[T](value: T){
def doubleString = value.toString() + value.toString()
def specialSauce(implicit ev: T <:< Dummy): Dummy = ...
}
을 는 직접 자손입니다 (Dummy
).
답장을 보내 주셔서 감사합니다. 바로 제가 원하는 것입니다. –