【发布时间】:2020-02-19 05:02:33
【问题描述】:
我有一个接口A(在java中)
public interface A {
File getFile();
void delete();
void delete0();
}
还有一个接口 B 扩展了 A(在 java 中)
public interface B extends A {
default void delete() {
this.getFile().delete();
}
}
还有一个接口C,它也扩展了A(在java中)
public interface C extends A {
default void delete0() {
this.getFile().delete();
}
}
而且我有一个实现A 的特征D(在常规中)
public trait D implements A {
private File file;
public File getFile() {
return this.file;
}
}
最后,我有一个类 E 实现了 B、C、D(在 groovy 中)
public class E implements B, C, D {
}
编译时,编译器抱怨类E没有实现方法delete0()
【问题讨论】:
-
你的最后一个班级名字是D,应该是E
-
这是什么 groovy 版本?我对
trait D中的default感到困惑 -
对不起,我写的是 'D' 而不是 'E',也对不起'default'修饰符我的意思是'public'
标签: java groovy interface traits