为什么class LinkedList <e>没有实现boolean isEmpty()方法?

时间:2018-01-14 14:20:12

标签: java list linked-list

LinkedList类实现以下接口:

public class LinkedList<E>
extends AbstractSequentialList<E>
implements List<E>, Deque<E>, Cloneable, java.io.Serializable
...

我注意到,List接口包含返回boolean的isEmpty()方法:

public interface List<E> extends Collection<E> {
int size();
boolean isEmpty();
...

我的问题是:为什么LinkedList类没有实现isEmpty()方法?

其次,是否允许一个接口扩展多个接口?

1 个答案:

答案 0 :(得分:4)

LinkedListAbstractSequentialList,其中AbstractListAbstractCollection。并且AbstractCollection已经通过以下方式实现它:

public boolean isEmpty() {
    return size() == 0;
}

并且该逻辑对于LinkedList是正确的,因此它不会再次实现该方法。