最近看見一個(gè)JavaEye上關(guān)于Java基本類型編譯優(yōu)化的帖子。
貌似高深莫測,其實(shí)疑點(diǎn)重重。吧內(nèi)容轉(zhuǎn)貼過來,希望在這里找到更合理的解釋。
這些描述我也看過,很是不解。
如果說這種基本類型也需要用這種指針的風(fēng)格,還要共享數(shù)據(jù),那么后續(xù)的操作處理起來不是更麻煩嗎?
每次寫操作都要查找已有常量。甚至開辟新的空間存儲(chǔ)新值。
再說這個(gè)指針怎么的也要個(gè)32位吧。為什么就不能直接吧值放進(jìn)去,硬是要通過指針跳來跳去的,有意義嗎?
這優(yōu)化了嗎?
反正在我看來,這是不可能的。
希望有高手出來澄清一下,給個(gè)合理的解釋。
如果是對的,那也應(yīng)該給出有點(diǎn)說服力的證據(jù)。
如果是錯(cuò)的,那么建議大家吧這篇文章的源頭揪出來,這個(gè)確實(shí)誤人不淺。
不過java對 String 這類不可變對象的處理,編譯器確實(shí)有類似優(yōu)化,不過也只是編譯期。
這種系統(tǒng)類庫受到點(diǎn)編譯器的特別關(guān)注倒是很合理的。
posted on 2007-07-30 08:29
金大為 閱讀(1169)
評論(12) 編輯 收藏 所屬分類:
Java