使用final關(guān)鍵字時需要注意以下幾個問題:
(推薦教程:java入門教程)
1、被final修飾的類不可以被繼承;
2、被final修飾的方法不可以被重寫;
3、被final修飾的變量不可以被改變,如果修飾引用,那么表示引用不可變,引用指向的內(nèi)容可變;
4、被final修飾的方法JVM會嘗試將其內(nèi)聯(lián),以提高運行效率;
5、被final修飾的常量在編譯階段會存入常量池中;
(視頻教程推薦:java視頻教程)
在構(gòu)造函數(shù)內(nèi)對一個final域的寫入,與隨后把這個被構(gòu)造對象的引用賦值給一個引用變量,這兩個操作之間不能重排序。
初次讀一個包含final域的對象的引用,與隨后初次讀這個final域,這兩個操作之間不能重排序。