Given:



What is the result?

A.

10 20 30 40

B.

0 0 30 40

C. Compilation fails
D. An exception is thrown at runtime

題解

程式第9行,將新長度為4的整數陣列指派給numbers變數,因此在這之前長度為的2的整數陣列沒有被任何的變數所指向(此陣列空間可稱為孤島),其所佔用的記憶體會自動在稍候被Java的垃圾回收(Garbage Collection)機制給回收重新使用。

數值陣列的裡的數值,一開始的初始值為0。程式只有在第10~11行時更改了numbers陣列物件索引2和3的值。因此最後輸出為「 0 0 30 40」。