考慮下面的代碼:Java是「緩存」匿名類嗎?
for(int i = 0;i < 200;i++)
{
ArrayList<Integer> currentList = new ArrayList<Integer>() {{
add(i);
}};
// do something with currentList
}
- 將如何處理的Java類的
currentList
? - 對於200個物體中的每一個,它會認爲它是不同的類嗎?
- 即使在第一個對象被創建後它會是性能問題嗎?
- 它以某種方式緩存它嗎?
我只是好奇:)
Afaik匿名類是一個簡單的類,只有一個生成的名稱。而已。緩存與類加載器中的每個類一樣執行。 – ZeissS 2010-01-12 17:10:06
實際上這會產生一個編譯器錯誤:'我'不是最終的,這對於循環計數器來說是個壞主意。但一個很好的問題! – 2010-01-12 19:10:43