Scala クラスを定義すると:
class X(i:Int) {
println (i)
}
このクラスを Java コードで使用するにはどうすればよいですか?
[編集] 実際、私の問題はもう少し複雑です
私は抽象クラスを持っています
abstract class X(i:Int) {
println (i)
def hello(s:String):Unit
}
これをJavaコードで使用する必要があります。簡単にできますか?
[EDIT2] 次のコードを検討してください
object B {
case class C(i:Int)
}
abstract class X(i:Int) {
println (i)
def hello(a:B.C):Unit
}
この場合、次の Java コードは Netbeans IDE でエラーを返しますが、正常にビルドされます。
public class Y extends X {
public void hello(B.C c) {
System.out.println("here");
}
public Y(int i) {
super(i);
}
}
私が得るエラーは次のとおりです。
hello(B.C) in Y cannot override hello(B.C) in X; overridden method is static, final
Netbeans 6.8、Scala 2.8。
今のところ、唯一の解決策は NB エラーを無視することだと思います。
これは、私が得る正確なエラーを示す画像です: