Thi*_*ers 0 java generics enums
我试图调用一个方法,它接受一个Enle列表(实现接口)的接口列表.这给出了以下编译错误:
The method method(List<Interface>) in the type Class is not applicable for the arguments (List<Enum>)
Run Code Online (Sandbox Code Playgroud)
这是界面:
public interface Interface {
}
Run Code Online (Sandbox Code Playgroud)
这是实现接口的枚举:
public enum Enum implements Interface {
}
Run Code Online (Sandbox Code Playgroud)
这是调用类:
import java.util.ArrayList;
import java.util.List;
public class Class {
public static void method(List<Interface> list){
}
public static void main(String[] args) {
List <Enum> enumList = new ArrayList<Enum>();
method(enumList); //This line gives the compile error.
}
}
Run Code Online (Sandbox Code Playgroud)
为什么会出现编译错误?对我而言,它似乎应该工作,因为Enum实现了该接口.
public static void method(List<? extends Interface> list){
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
261 次 |
| 最近记录: |