這些Java程式碼最佳化細節,你需要注意!
很多學習Java的人都知道,Java程式設計師是離不開反反覆覆敲打程式碼的!不斷去最佳化程式碼,也就意味著能夠更進一步的提高程式碼執行的效率。那麼,程式碼最佳化有哪些細節需要注意呢?就讓小千為大家簡單講解,希望對想要掌握Java知識點的學員有所幫助!
1、儘量指定類、方法的final修飾符
帶有final修飾符的類是不可派生的。在Java核心API中,有許多應用final的例子,例如Java.lang.String,整個類都是final的。為類指定final修飾符可以讓類不可以被繼承,為方法指定final修飾符可以讓方法不可以被重寫。如果指定了一個類為final,則該類所有的方法都是final的。Java編譯器會尋找機會內聯所有的final方法,內聯對於提升Java執行效率作用重大,具體參見Java執行期最佳化。此舉能夠使效能平均提高50%。
2、儘量重用物件
特別是String物件的使用,出現字串連線時應該使用StringBuilder/StringBuffer代替。由於Java虛擬機器不僅要花時間生成物件,以後可能還需要花時間對這些物件進行垃圾回收和處理,因此,生成過多的物件將會給程式的效能帶來很大的影響。
3、儘可能使用區域性變數
呼叫方法時傳遞的引數以及在呼叫中建立的臨時變數都儲存在棧中速度較快,其他變數,如靜態變數、例項變數等,都在堆中建立,速度較慢。另外,棧中建立的變數,隨著方法的執行結束,這些內容就沒了,不需要額外的垃圾回收。
4、及時關閉流
Java程式設計過程中,進行資料庫連線、I/O流操作時務必小心,在使用完畢後,及時關閉以釋放資源。因為對這些大物件的操作會造成系統大的開銷,稍有不慎,將會導致嚴重的後果。
5.使用同步程式碼塊替代同步方法
這點在多執行緒模組中的synchronized鎖方法塊一文中已經講得很清楚了,除非能確定一整個方法都是需要進行同步的,否則儘量使用同步程式碼塊,避免對那些不需要進行同步的程式碼也進行了同步,影響了程式碼執行效率。
說起來,Java作為程式語言界的“老大哥”,隨著時代發展也在不斷的更新。而我們既然想要走進Java,就一定要記得不斷去充實自己,提升自身的能力,讓自己成為更符合時代需求的Java程式設計師。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31548651/viewspace-2773793/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- java web開發這些細節你真的掌握了嗎JavaWeb
- 程式設計師面試 IT 公司,這些細節一定要注意!程式設計師面試
- 圖解SparkStreaming與Kafka的整合,這些細節大家要注意!圖解SparkKafka
- 你不知道的,Java程式碼效能最佳化的 40+ 細節,趕快收藏!Java
- Java面試要注意哪些細節Java面試
- 【超詳細】Linux常用命令,這些你需要掌握!Linux
- 買顯示器這些細節也得注意 不能只看引數
- MYSQL索引建立需要注意以下幾點細節MySql索引
- 關於使用vector時需要注意的細節
- 想要寫出好味道的程式碼,你需要養成這些好習慣!
- 程式設計師面試IT公司,這些地方你要注意!程式設計師面試
- 數字展廳設計需要注意哪些細節?
- 使用JavaScript變數需要注意哪些語法細節?JavaScript變數
- 電商選品需要注意的8個細節
- [20190523]修改引數後一些細節注意.txt
- Web直播,你需要先知道這些Web
- 程式設計師面試除了技術外,還需要注意這些程式設計師面試
- 搭建直播系統前需要注意的細節有哪些?
- 第四篇:Hyperion安裝配置,這些細節你都知道嗎
- [20190523]修改引數後一些細節注意2.txt
- 【java細節】Java程式碼忽略https證照:No subject alternative names presentJavaHTTP
- Java程式設計師想要跳槽,一定要注意這些技巧!Java程式設計師
- Golang陣列注意細節Golang陣列
- 這些CSS提效技巧,你需要知道!CSS
- ??你以為你瞭解TCP協議?這些你可能不知道的細節才是關鍵!TCP協議
- 【Java】若依(ruoyi)——7.程式碼生成(二)細節操作Java
- 掌握這些程式碼安全檢視方法,提升你的程式碼質量
- 這些Python程式碼技巧,你肯定還不知道Python
- 用 Go map 要注意這 1 個細節,避免依賴他!Go
- 做大屏細節不好調整,這些自助儀表盤製作技巧分享給你!
- 如何與大廠程式設計師 PK?你需要具備這些能力程式設計師
- iOS模仿系統相機拍照你不曾注意過的細節iOS
- 不小心就被遺忘了!這4個顯示器細節設計你有注意過嗎
- 簡單分析Go語言中陣列的這些細節Go陣列
- 你知道PHP中Exception, Error Handler的這些細PHPExceptionError
- 使用FMEA需要注意些什麼?
- 學習 Android Handler 訊息機制需要注意這些問題!Android
- 研發一款VR射擊遊戲,需要注意這些VR遊戲