考慮下面的Scala代碼:爲什麼Scala不能在類型參數嵌套時完全推斷類型參數?
abstract class A
abstract class B[T <: A]
class ConcreteA extends A
class ConcreteB extends B[ConcreteA]
class Example[U <: B[T], T <: A](resolver: U)
object Test {
new Example(new ConcreteB)
}
最後一行new Example(new ConcreteB)
失敗,出現以下錯誤編譯:
error: inferred type arguments [ConcreteB,Nothing] do not conform to class Example's type parameter bounds [U <: B[T],T <: A]
但ConcreteB
擁有所有解決雙方ü和 T.必要的數據我在這裏錯過了什麼?
可能的重複[類型感染到斯卡拉Nothing](http://stackoverflow.com/questions/6888136/type-infered-to-nothing-in-scala) –
它是相似的,但接受的答案是問題不適用於這種情況。 –