日期:2014-05-20  浏览次数:20584 次

为什么不可以这样定义接口?请问
这个问题好奇怪哦!
大家帮忙解释、一下!

import java.util.*;
public interface Sort<List<E>> {
public void sort(List<?> list);
}
为什么不可以这样定义?

------解决方案--------------------
这样写是可以的:

import java.util.*;
public interface Sort{
public void sort(List<?> list);
}

LZ一定要那个<List<E>> 吗?

------解决方案--------------------
lz是觉得java的语法不够好,还是?。。。。。。
------解决方案--------------------
头一回看到泛型有像你这样嵌套的。
你的这个正确的定义应该是这样
import java.util.*;
public interface Sort<E> {
public void sort(List<? super E> list);
}
------解决方案--------------------
LZ为神马硬要给接口加个<List<E>>泛型?
------解决方案--------------------

import java.util.List;

public interface Sort<E> {
public E init();
}


class c <T> implements Sort<List<T>> {

@Override
public List<T> init() {
return null;
}

}