代码:
Stack<Integer> firstStack = new Stack<Integer>();
Stack<Integer> secondStack = firstStack;
firstStack.push(1);
firstStack.push(2);
secondStack.pop();
System.out.println(firstStack.pop());
我的问题是,如果 firstStack 引用了 Stack 中的最后一项,而 secondStack 也引用了该项,那么当我从 secondStack 弹出时,firstStack 应该继续引用(上一个)最后一项(即 2)。为什么 firstStack 的引用也更改为第一项?(我的意思是第一项:1)