【发布时间】:2017-10-06 06:31:20
【问题描述】:
1) class Stack: public E push(E item)
class Stack - 它的 push 方法只返回它的参数(不像新的 Deque,其各自的 push 方法现在是 void):
public E push(E item)
您能否提供使用此功能的任何有用的现实生活/生产示例?
我知道 Stack 是遗留的,请改用 Deque 实现。
但是在旧版应用程序中如何使用此功能?我想它可以用于调用链,但想不出一个实际的例子。
2) 您在日常工作中是否经常需要使用 Stack 类? 它是否仍然广泛使用?或者大多数遗留应用程序已经被重构为使用 Deque?
3) 如果我在积极开发(添加新功能)的任何遗留应用程序中遇到 Stack,将 Stack 重构为 Deque 是否有任何实际好处(是否值得)?我知道在新应用中 Deque 是可取的,但如果我已经在旧应用中拥有 Stack,从实际的角度来看,是否存在绝对值得努力将其重构为 Deque 的情况?
4) 我是对的,如果我需要在多线程访问中使用堆栈数据结构,我将使用 ConcurrentLinkedDeque(因为我更喜欢 Deque 实现而不是 Stack 类)?或者现在有没有使用 Stack 进行多线程访问的做法?我想没有,但我还是想请教大师。
【问题讨论】:
标签: java collections stack legacy-code