gpt4 book ai didi

java - Java Stack 类中的 empty() 与 isEmpty()

转载 作者:IT老高 更新时间:2023-10-28 20:38:42 26 4
gpt4 key购买 nike

为什么 Java 中的 Stack 有一个 empty() 方法以及通常的 isEmpty()Stack 扩展的所有抽象类都有一个 isEmpty() 方法。

最佳答案

我相信 OP 的问题更多的是:为什么会有重复的方法,给定 empty()isEmpty()做同样的事情吗?

如果你仔细看看,在 Vector , StackHashTable ,有更多的方法用不同的名字做类似的事情。

这是简史:

在 JDK 1.0 的时候,Java 中没有“Collection”框架。 Stack , Vector , HashTable是Java提供的一些基本数据结构。

后来在 JDK 1.2 中,Collection 框架被添加到 JDK 中,并引入了标准接口(interface)(如 ListMap )。

但是,在这些新的标准集合接口(interface)中,方法以不同的约定命名。命名约定的变化很可能受到 JDK 1.2 中引入的 Java Bean 标准的影响。这些方法名称与旧 Stack 中的方法名称不同。 , VectorHashTable类。例如,它被命名为 empty()在原来的类(class),但被命名为 isEmpty()Collection界面。

为了制作Stack , VectorHashTable与 Collection 框架兼容,Stack , VectorHashTable已经实现了其对应的 Collection 接口(interface)。同时,为了向后兼容,保留了旧方法。

因此出现了您现在看到的“重复”方法。

关于java - Java Stack 类中的 empty() 与 isEmpty(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24986945/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com