0

这不是一个紧迫的问题,我只是好奇。

使用 push() 将另一个对象添加到 Stack 和使用 addElement() 添加对象有什么区别?

我在其他地方发现 push() 和 add() 之间没有区别,因为 add() 是从 Collections 继承的,但我仍然很想知道是否有什么我应该知道的。

另外,它们是否都具有相似的返回类型?

4

3 回答 3

4

继承的addElement方法返回一个boolean指示成功。

push方法忽略返回boolean、调用addElement并返回项目本身。来自链接的源代码:

public E push(E item) {
    addElement(item);

    return item;
}
于 2013-11-06T22:18:39.540 回答
0

addElement是 的一部分Vector,它Stack继承。

push是一种实际的Stack方法。

于 2013-11-06T22:15:57.193 回答
0

这是由java中的继承引起的。是由扩展addElement()的超类的方法。VectorStack

你应该看到这个(特别是继承树): http ://docs.oracle.com/javase/7/docs/api/java/util/Stack.html

于 2013-11-06T22:19:24.190 回答