2012-04-05 71 views
3

我正在实施我自己的LinkedList。我有一个课程叫MyLinkedLlist,里面MyLinkedList只有size()iterator()已经实施。 。再说我有一个抽象类,其中为LinkedList我所有其他必要的功能抽象类原型为:执行自己的LinkedList

public abstract class MyAbstractSequentialList implements List 

我不知道如果我需要实现我的抽象类中equals()方法或它已经对我实施因为我继承List

+0

当我写“公共抽象类MyAbstractSequentialList实现列表”日蚀显示一些方法,但不等于()。 – cyo 2012-04-05 06:01:36

+0

实际上编译器如何说我是否需要或不实现equals()方法,因为它取决于我? – cyo 2012-04-05 06:05:57

+0

当我没有实现equals()方法时没有错误。当我把它称为测试它的工作,但返回false应该不是结果 – cyo 2012-04-05 06:07:39

回答

5

列表是一个接口。所以,不会有任何默认的实现。如果需要,您可以选择实施一个。请注意,如果您覆盖等于,则还必须覆盖散列码。

1

列表是一个接口,equals()方法没有在列表执行,因为任何接口的所有方法应该是抽象的。

所以你必须在抽象类中实现等于()方法。如果没有,你必须在扩展你的抽象类的任何子类中实现它。

1

List是一个接口,所以如果你想在自己的LinkedList所以你必须覆盖手段实现equals()因为没有与如果要实现,那么你必须实现它的方法以及接口契约来实现。