我有两个类,一个抽象的Java类,以及一个扩展Java类的Groovy子类。他们看起来像这样:
(Java)的
public abstract class Testing1 {
private static int myField = 0; //static not relevant to the issue.
}
(Groovy的)
class Testing2 extends Testing1 {
public static void main(String[] args) {
println myField;
}
}
现在,由于该字段被声明为私有运行Testing2
会产生异常。正如所料。但是,Eclipse没有给出任何警告说这个字段不可见,甚至在你键入它时自动完成myField
字!是否有Eclipse设置我可以激活,以便在编写Java和Groovy时不会自我烧伤?
答案 0 :(得分:0)
这对我来说听起来像是一个灰烬的错误,因为应该没有这样的选择。 Groovy不为父类提供子类的私有访问。静态情况有点争论,因为在Groovy中技术上允许Testing1.myField。但是,既然你确认这种情况也发生在实例字段中,我很确定,这是非预期的行为
在此处填写错误报告:https://jira.codehaus.org/browse/GRECLIPSE会有很多帮助