8

サブクラス化しようとしているJavaクラスには、次のようなメソッドがあります。

public abstract void foo(Map var1);

そのメソッドをオーバーライドする方法がわかりません。私がサブクラス化しているJavaクラスは、ジェネリックスを使用していません。

Scalaで私は試しました:

override def foo(var1:java.util.Map[Int,Int]){ }

しかし、コンパイラは、何もオーバーライドしないというエラーメッセージを表示します。

問題の核心は、Scalaがマップ上の型パラメーターを予期しているが、Javaクラスはそれらを使用しないことです。

4

1 に答える 1

9

これはそれを機能させるつもりです

override def foo(var1:java.util.Map[_,_]){ }
于 2012-12-25T10:36:25.117 に答える