最近當我在LeetCode上做一些練習時,我發現了一些技巧性的解決方案。它使用Object o來引用一個數組Object o = new Object[]{null,null};
,我想也許這是因爲在java中一切都是object.But當我嘗試這種方式時,它出錯了。 Object o3 = {1,2};
所以我想盡辦法來初始化數組,我想看到的差異,像這些Java中靜態初始化和動態初始化有什麼區別?
int arr[] = {1,2};
Object o = arr;
Object o1 = new int[2];
Object o2 = new int[]{1,2};
Object o3 = {1,2};
只有O3將編譯error.I不知道是否是因爲initialization.I的方式知道當我使用靜態初始化它將首先分配內存,當使用動態初始化它不會。它們之間的任何其他差異會導致此錯誤?當我使用new來創建一個數組。它在jvm中做了什麼?在此先感謝。
「in java everything is object」不,原語不是對象 – m0skit0
一個'差異'是在Java中沒有'靜態初始化'這樣的事情。 – EJP