2015-05-21 40 views
0

我想從Java庫中擴展一個類並覆蓋基本方法,但即使方法簽名是正確的,Eclipse仍會給我提供錯誤。無法從基礎類從Scala中的Java庫中覆蓋方法

我的代碼如下所示:

import someLibrary.ClassA 
import someLibrary.TypeX 
import someLibrary.TypeY 
... 
class MyClass extends ClassA { 
    ... 
    override def foo(s: TypeX, params: Array[String]): List[TypeY] = { 
      ... 
    } 
} 

我不斷收到的錯誤是:

覆蓋式的類ClassA的方法foo(X $ 1:someLibrary.TypeX, X $ 2:陣列[字符串])的java.util.List [someLibrary.TypeY];方法富有 不兼容的類型

請注意我的方法簽名是完全一樣的。

編輯: 這裏讀書人的回答後,我就是這樣定的:

import scala.collection.JavaConverters._ 
myScalaList.asJava 

回答

3

這可能是因爲原來的方法返回一個java.util.List,而你重寫返回一個列表斯卡拉。