2016-09-05 80 views
0

爲什麼下面的兩個方法定義不能編譯?使用已知類型參數化類

b.head應該編譯,因爲b是List的「自定義類型」。

List[T](a)List[T]類型中的哪一個相同genericList

type T = Any 

type genericList = List[T] 

class usesGenericList[genericList](val a: T, b: genericList){ 

    def head() = b.head 
    // error: value head is not a member of type parameter genericList 

    def returnGenericList: genericList = List[T](a) 
// error: found: List[$sess.cmd203.T](which expands to) List[Any] required: genericList 

} 

回答

1

您陰影外type genericListclass usesGenericList[genericList]。只要刪除類的類型參數。

+0

Shucks!謝謝,愚蠢的錯誤。 – Samar