[英]How to implement a nested java interface in scala
假设我定义了以下旧版Java:
abstract class A {
abstract I foo();
public interface I
{
int bar();
}
}
我想在scala中实现以下内容:
class MyA extends A {
def foo() = new I {
def bar = 3
}
}
Scala将不会编译错误
找不到:I型
如何在Scala代码中引用我的Java接口?
通过scala彩色镜片查看您的java代码,您将看到
foo
A
类, AI
的对象A
由于同伴的成员不会自动导入类中 ,因此您需要使用AI
或先将其导入:
def foo() = new A.I { ... }
// or with an import
import A.I
def foo() = new I { ... }
这段代码对我有用:
class MyA extends A {
def foo() = new A.I {
def bar = 3
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.