1. 程式人生 > >java中final關鍵字的編譯問題

java中final關鍵字的編譯問題

之前我是沒有發現有這個噁心的問題的,從各種資料上看到final關鍵字的說明,都只是說此關鍵字是在程式中只允許賦值一次什麼的。而在正常的運用當中這個關鍵字基本上也不會發現什麼問題。

但是當我們把一個版本號用此關鍵字修飾的時候,問題就出現了。

我們在一個系統檔案(SystemValue)中對版本號(PRO_CODE)進行了修飾,在我們的產品中很多地方都用到了這個版本號進行一個區分。

這段程式碼編譯後竟然是這樣的


本來這樣也是沒有任何問題的

但是我們在做包的時候,是升級包,只提取了改變的java檔案,這個時候這裡的class檔案沒有被重新編譯,那麼在眾多用到我們版本號的地方就悲催了,我們只要用過這個東東的java檔案我們都需要手動的重新去編譯一次。這樣的工作是十分沒有效率,蛋疼之下只好放棄final關鍵字。