Java Can';t重写Vaadin组合框的getValue()方法 @覆盖 公共E getValue(){ 返回(E)super.getValue(); }
为什么这个覆盖不起作用? Idea返回的错误是两个方法具有相同的擦除,但它们没有相互覆盖 编辑: 无法重载每个重载的形式参数类型擦除为相同原始类型的方法 一个类不能有两个重载方法,它们在类型擦除后将具有相同的签名Java Can';t重写Vaadin组合框的getValue()方法 @覆盖 公共E getValue(){ 返回(E)super.getValue(); },java,overriding,Java,Overriding,为什么这个覆盖不起作用? Idea返回的错误是两个方法具有相同的擦除,但它们没有相互覆盖 编辑: 无法重载每个重载的形式参数类型擦除为相同原始类型的方法 一个类不能有两个重载方法,它们在类型擦除后将具有相同的签名 @Override public <E extends Enum<E>> E getValue(){ return (E) super.getValue(); } 公共类示例{ 公共作废打印(集合strSet){} 公共无效
@Override
public <E extends Enum<E>> E getValue(){
return (E) super.getValue();
}
公共类示例{
公共作废打印(集合strSet){}
公共无效打印(Set intSet){}
}
重载将共享相同的类文件表示,并将生成编译时错误
来源:正在运行时擦除参数类型。所以签名是相同的 详情请点击这里
public class Example {
public void print(Set<String> strSet) { }
public void print(Set<Integer> intSet) { }
}