An Overview of the Collections API에서 오는 다음 코드를 스칼라에서 사용하려고합니다.scala.collection의 특성으로 인해 인스턴스가 생성되는 이유는 무엇입니까?
import collection._
scala> Traversable(1, 2, 3)
res5: Traversable[Int] = List(1, 2, 3)
scala> Iterable("x", "y", "z")
res6: Iterable[String] = List(x, y, z)
scala> Map("x" -> 24, "y" -> 25, "z" -> 26)
res7: scala.collection.Map[String,Int] = Map(x -> 24, y -> 25, z -> 26)
scala> SortedSet("hello", "world")
res9: scala.collection.SortedSet[String] = TreeSet(hello, world)
scala> IndexedSeq(1.0, 2.0)
res11: IndexedSeq[Double] = Vector(1.0, 2.0)
결과 이들 특성은 모두 구현의 인스턴스를 생성 apply
그 메소드를 호출 할 수 있음을 보여준다. 그러나 scala.collection.package
개체를 찾은 후에 나는 아무 것도 발견하지 못했습니다. 나는 그 특성을 그것의 서브 클래스에 묶고 내 프로그램으로 가져 오는 어딘가가 있어야한다고 생각한다. 누군가가 그것이 어디에 있는지 설명 할 수 있습니까?
Traversable의 부속 객체에는'apply' 메소드가 없습니까? – ssj
있습니다. [두 번째 링크] (http://www.scala-lang.org/api/current/index.html#scala.collection.Traversable$)를보십시오. '가치 구성원'섹션에 나열된 두 번째 항목입니다. –
오, 알겠습니다. 'apply' 메소드는'TraversableFactory'에서 확장됩니다. – ssj