Java 实现自己的LinkedList
我正在实现自己的Java 实现自己的LinkedList,java,linked-list,Java,Linked List,我正在实现自己的LinkedList。我有一个类,它调用MyLinkedLlist,在MyLinkedList中,只实现了size()和iterator()。此外,我还有一个抽象类,其中包含了LinkedList所需的所有其他函数。抽象类原型是: public abstract class MyAbstractSequentialList implements List 我想知道我是否需要在抽象类中实现equals()方法,或者它已经为我实现了,因为我继承了List?List是一个接口。因此,
LinkedList
。我有一个类,它调用MyLinkedLlist
,在MyLinkedList
中,只实现了size()
和iterator()
。此外,我还有一个抽象类,其中包含了LinkedList
所需的所有其他函数。抽象类原型是:
public abstract class MyAbstractSequentialList implements List
我想知道我是否需要在抽象类中实现
equals()
方法,或者它已经为我实现了,因为我继承了List
?List是一个接口。因此,不会有任何默认实现。如果需要,您可以选择实现一个。请注意,如果重写equals,则还必须重写hashcode。List是一个接口,equals()不在List中实现,因为任何接口中的所有方法都应该是抽象的
因此,您必须在抽象类中实现equals()方法。如果没有,您必须在扩展abstractclass的任何子类中实现它。
List
是一个接口,因此如果您想在自己的LinkedList
中实现,则必须重写means implementequals()
因为如果您要实现接口,那么您就必须实现它的方法。当我编写“公共抽象类MyAbstractSequentialList实现列表”时,eclipse向我展示了一些方法,但不是equals()。实际上,编译器如何说我是否需要实现equals()方法,因为这取决于我吗?当我没有实现equals()方法时没有错误。当我调用它进行测试时,它可以工作,但返回false,这不应该是很糟糕的结果,我期望编译时警告。删除噪音。希望你能得到一个合适的答案。:)