0
をdoes't:それは、型推論のように見えますが、私は次のコードしている、ここで仕事
trait A {
def x: Option[Int]
def y: Option[String]
}
case class A1(
override val x: Option[Int] = Some(1),
override val y: Option[String] = Some("abc")
) extends A
case class A2() extends A {
override val x = Some(1)
override val y = Some("abc")
}
A1の定義では、私は、xとyのオプションですタイプ、[INT]とオプションの[文字列を指定する必要があります]、
x: Option[Int]
と
val y: Option[String]
が、私はA2
のための型を指定する必要はありませんでした私はA1のために持っている、としませA2のための理由をいくつかのいずれかの助け?