3

こんにちは、私は Scala に頭を悩ませようとしています。

API を参照していて、なじみのない構文が見つかりました

http://www.scala-lang.org/api/current/#scala.actors.CanReply

trait CanReply[-T, +R] extends AnyRef

abstract type Future[+P] <: () ⇒ P

T と R の前にある + と - は何を意味していますか?

4

3 に答える 3

2

共分散と反分散を意味します。http: //debasishg.blogspot.ch/2006/04/generics-in-scala-part-1_12.html を参照してください。

具体的には、引用:

クラス定義の + in 型引数は、サブタイプがその型パラメーターで共変であることを示します。A - 同じ場所で関係が反変性に変わります。デフォルトの (プレフィックスなしの) 宣言は、サブタイプの不変性を示します。

于 2013-08-29T09:25:54.770 に答える