主题:JDK1.6某些Interface设计不是最优。。

13年前

转载:http://www.javaeye.com/topic/850954

JDK 1.6

集合类的接口设计实在是有点不合理。


Java代码
public interface Iterable<T> { 


需要实现的方法有一个。
Iterator<T> iterator();


Collection 这个接口继承了它

Java代码
public interface Collection<E> extends Iterable<E> { 

但是Collection接口的声明里 还有这个方法Iterator<E> iterator();

接着
List这个借口继承了 Collection

Java代码
public interface List<E> extends Collection<E> { 


里面很多声明的方法都是在Collection里声明过的
比如:int size();
boolean isEmpty();
Iterator<E> iterator();


既然用继承为就应该充分利用啊。