Mat*_*t R 8 java interop visibility scala nested-class
假设我在库中有以下Java文件:
package test;
public abstract class AbstractFoo {
protected static class FooHelper {
public FooHelper() {}
}
}
Run Code Online (Sandbox Code Playgroud)
我想从Scala扩展它:
package test2
import test.AbstractFoo
class Foo extends AbstractFoo {
new AbstractFoo.FooHelper()
}
Run Code Online (Sandbox Code Playgroud)
我收到一个错误,"无法在对象test.AbstractFoo中访问类FooHelper".(我每晚都使用Scala 2.8).以下Java正确编译:
package test2;
import test.AbstractFoo;
public class Foo2 extends AbstractFoo {
{ new FooHelper(); }
}
Run Code Online (Sandbox Code Playgroud)
如果Scala版本放在test包中,它也会编译.还有另一种方法可以让它编译吗?