2016-01-24 29 views
0

由於接口只指定方法,而不是實例變量,如何存儲分配給這樣的:Java如何爲接口數組分配存儲空間?

Comparable[] aux = new Comparable[20]; 

多少每個位置的記錄(即不包括數組的開銷)將被分配?

+2

數組只分配足夠的連續內存指向對象的指針,它不需要爲實際對象本身分配內存 – MadProgrammer

+0

是的,如果你發佈這個答案,我會接受它。 –

回答

2

該數組僅爲指向對象的指針分配足夠的連續內存,因此不需要爲實際對象本身分配內存。

我們有時會忘記,Java的仍使用「指針」(又名參考),它只是不提供訪問相同級別的那些三分球,其他語言做

1

對象是引用類型,因此每個對象的子類型(包括比較器和其他每個接口)都是引用類型。這意味着每個數組項的大小都是對象引用的大小。它是什麼樣的對象沒有什麼不同。