我在Java中出现了一些奇怪的问题。我在调试时已经确定了整个问题。它发生在这2条线上:了解对象变量赋值行为
q=p;
q.addPair(2,3);
笔记:p,q是我定义的新类。在这门课上,它有一个public function addPari(int, int)
。
这是我所期待的:复制p
到q
,然后更改q
使用q.addPair()
,但留下p
和以前一样。
我认为这可以工作,但不知何故,结果发现q.addPair(2,3)
将改变p
和q
。任何人都可以帮助我呢?
Java从不复制任何东西。 – SLaks