幾年前有個同事寫程式會加一堆final
,當時我只知道final
可避免變數值被修改,但不曉得為什麼他幾乎在每個地方都加,他的回答是效能較好,well...。
當初我查了一些文章都說不會因為加了final
讓效能比較好,而直到最近讀完Effective Java Third Edition後我終於清楚知道為什麼了,去他的效能較好啦。
如果真的效能較好,那為什麼Java lib及那些各大framework的source code也沒到處加final
哩?
final
關鍵字的用途主要是用在避免變數被修改,避免類別被繼承,避免方法被覆寫。簡單說是為了維護性而存在。
沒有留言:
張貼留言