这不是一个迫切的问题,我只是好奇。
使用push()将另一个对象添加到Stack并使用addElement()添加对象有什么区别?
我在其他地方发现push()和add()之间没有区别,因为add()是从Collections继承的,但我仍然很想知道是否有任何我应该知道的事情。< / p>
另外,他们都有类似的返回类型吗?
答案 0 :(得分:4)
继承的addElement
方法返回boolean
表示成功。
push
method忽略返回boolean
,调用addElement
,并返回项目本身。来自链接的源代码:
public E push(E item) {
addElement(item);
return item;
}
答案 1 :(得分:0)
addElement
是Vector
的一部分,Stack
继承。
push
是一种实际的Stack
方法。
答案 2 :(得分:0)
这是由java中的继承引起的。 addElement()
是来自Vector
扩展的超类Stack
的方法。
你应该看到这个(特别是继承树): http://docs.oracle.com/javase/7/docs/api/java/util/Stack.html