無論學(xué)習(xí)什么都是需要講究技巧的,學(xué)習(xí)Java語言也是如此。對于新手來說,Java如何提高代碼效率呢?可以從指定類和方法的final修飾符、重用對象、使用局部變量、及時關(guān)閉流、減少變量的重復(fù)計算等這幾個方面入手。
1、盡可能指定類和方法的final修飾符
具有 final 修飾符的類是不可派生的。在Java核心API中,有很多final的應(yīng)用例子,比如java.lang.String,整個類都是final的。為類指定 final 修飾符使該類不可繼承,為方法指定 final 修飾符使該方法不可覆蓋。
如果一個類被指定為final,則該類的所有方法都是final。 Java 編譯器將尋找內(nèi)聯(lián)所有最終方法的機(jī)會。內(nèi)聯(lián)在提高 Java 的效率方面起著重要作用。有關(guān)詳細(xì)信息,請參閱 Java 運行時優(yōu)化。這可以將性能平均提高 50%。
2、盡可能重用對象
尤其是對于String對象的使用,在發(fā)生字符串連接時應(yīng)該使用StringBuilder/StringBuffer。
由于Java虛擬機(jī)不僅需要時間來生成對象,將來垃圾收集和處理這些對象也可能需要時間。因此,生成過多的對象會對程序的性能產(chǎn)生很大的影響。
3、盡可能使用局部變量
調(diào)用方法時傳遞的參數(shù)和調(diào)用過程中創(chuàng)建的臨時變量更快的入棧。其他變量,如靜態(tài)變量、實例變量等,都是在堆中創(chuàng)建的,比較慢。另外,棧中創(chuàng)建的變量隨著方法結(jié)束就消失了,不需要額外的垃圾回收。
4、及時關(guān)閉流
在Java編程過程中,進(jìn)行數(shù)據(jù)庫連接和I/O流操作時一定要小心。使用后及時關(guān)閉釋放資源。因為這些大對象的操作會給系統(tǒng)造成很大的開銷,稍有不慎就會導(dǎo)致嚴(yán)重的后果。
5、盡量減少變量的重復(fù)計算
澄清一個概念,方法的調(diào)用,即使方法中只有一條語句,也是消耗的,包括創(chuàng)建棧幀,調(diào)用方法時保護(hù)場景,方法時恢復(fù)場景被調(diào)用。
上述內(nèi)容從五個方面教大家Java如何提高代碼效率,希望以上的5個技巧能夠幫助大家提高好代碼效率。更多關(guān)于“Java培訓(xùn)”的問題,歡迎咨詢千鋒教育在線名師。千鋒已有十余年的培訓(xùn)經(jīng)驗,課程大綱更科學(xué)更專業(yè),有針對零基礎(chǔ)的就業(yè)班,有針對想提升技術(shù)的好程序員班,高品質(zhì)課程助力你實現(xiàn)java程序員夢想。