以下代码打印出来的结果是:
st1 has:[]
st2 has:[100]这个结果大大的出乎我的意外,st2引用已经覆盖了st1引用,他们指向的内容应该一样啊,真是搞不懂,请问大家的意见呢,谢谢
class B {    public static void main(String[] args) {
        Stack st1 = new Stack();
        Stack st2 = new Stack();
        new B().Method(st1, st2);
        System.out.println("st1 has:" + st1);
        System.out.println("st2 has:" + st2);
    }    private void Method(Stack st1, Stack st2) {
        st2.push(new Integer(100));
        st1 = st2;
    }
}