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