魔方格魔方格合作機構(gòu)> 南昌培訓(xùn)學(xué)校>江西南昌達(dá)內(nèi)IT培訓(xùn)
江西南昌達(dá)內(nèi)IT培訓(xùn)
全國統(tǒng)一學(xué)習(xí)專線 8:30-21:00
位置:魔方格 > 計算機>Java開發(fā)> 怎樣提高Java代碼效率?  正文

怎樣提高Java代碼效率?

發(fā)布時間:2022-03-12 14:30:09來源:魔方格

能提高Java代碼效率的技巧有這些:1.盡量指定類、方法的final修飾符;2.盡量重用對象;3.盡可能使用局部變量;4.及時關(guān)閉流;5.盡量減少對變量的重復(fù)計算。

1、盡量指定類、方法的final修飾符

帶有final修飾符的類是不可派生的。在Java核心API中,有許多應(yīng)用final的例子,例如java.lang.String,整個類都是final的。為類指定final修飾符可以讓類不可以被繼承,為方法指定final修飾符可以讓方法不可以被重寫。

如果指定了一個類為final,則該類所有的方法都是final的。Java編譯器會尋找機會內(nèi)聯(lián)所有的final方法,內(nèi)聯(lián)對于提升Java運行效率作用重大,具體參見Java運行期優(yōu)化。 此舉能夠使性能平均提高50% 。

2、盡量重用對象

特別是String對象的使用,出現(xiàn)字符串連接時應(yīng)該使用StringBuilder/StringBuffer代替。

由于Java虛擬機不僅要花時間生成對象,以后可能還需要花時間對這些對象進(jìn)行垃圾回收和處理,因此,生成過多的對象將會給程序的性能帶來很大的影響。

3、盡可能使用局部變量

調(diào)用方法時傳遞的參數(shù)以及在調(diào)用中創(chuàng)建的臨時變量都保存在棧中速度較快,其他變量,如靜態(tài)變量、實例變量等,都在堆中創(chuàng)建,速度較慢。另外,棧中創(chuàng)建的變量,隨著方法的運行結(jié)束,這些內(nèi)容就沒了,不需要額外的垃圾回收。

4、及時關(guān)閉流

Java編程過程中,進(jìn)行數(shù)據(jù)庫連接、I/O流操作時務(wù)必小心,在使用完畢后,及時關(guān)閉以釋放資源。因為對這些大對象的操作會造成系統(tǒng)大的開銷,稍有不慎,將會導(dǎo)致嚴(yán)重的后果。

5、盡量減少對變量的重復(fù)計算

明確一個概念,對方法的調(diào)用,即使方法中只有一句語句,也是有消耗的,包括創(chuàng)建棧幀、調(diào)用方法時保護(hù)現(xiàn)場、調(diào)用方法完畢時恢復(fù)現(xiàn)場等。

相關(guān)內(nèi)容: Java Java代碼 Java代碼效率

相關(guān)文章
最新文章
相關(guān)熱詞