我正在嘗試做一些考試練習,並且需要一些幫助(我是否正確地做了它們?如果沒有,爲什麼?)關於這些關於java基元和java對象的問題。這些都是true或false。Java中的原語對象
以下變量聲明到其被動態分配和存儲在所述堆中的對象的引用:INT X = 7;
假,因爲它是通由值,因爲int是原始
以下變量聲明到其被動態分配和存儲在所述堆中的對象的引用:整數x = 7;
真,因爲它參照存儲在堆上
如果傳遞變量作爲(1)的方法,該變量是通過引用傳遞宣佈的「x」的對象,其值可能會被調用函數修改。
假,因爲Java不僅通過值
如果傳遞變量「X」,如(2)的方法,在被創建 變量的副本宣通堆,並傳遞給該函數,以便該函數的對象 引用指向內存中的不同位置。
真,因爲變量是在棧中,但它指向一個地方堆
謝謝大家的幫助。
我不相信4) - IIRC,引用的副本放在堆棧上,儘管所提到的對象仍然在堆中。 –
4)對我來說似乎是虛假的;通過參考副本,但該副本指向堆中的同一對象 –
執行一些測試,在內部更改之前和之後打印值,您將得到答案。 – PSyLoCKe