久久天堂一区二区三区_国内精品久久久久影院网站_亚洲国产一区二区三区最新_亚洲国产一区二区三区四区五区

JAVA編程提高性能時(shí)需注意的地方(一)

電腦用久了會(huì)出現(xiàn)內(nèi)存不足現(xiàn)象,除了新增機(jī)器內(nèi)存外,還應(yīng)該好好review一下我們的代碼,有很多代碼編寫過于隨意化,這些不好的習(xí)慣或?qū)Τ绦蛘Z言的不了解是應(yīng)該好好打壓打壓了。

下面是參考網(wǎng)絡(luò)資源,總結(jié)一些在java編程中盡可能做到的一些地方

1.盡量在合適的場(chǎng)合使用單例

使用單例可以減輕加載的負(fù)擔(dān),縮短加載的時(shí)間,提高加載的效率,但并不是所有地方都適用于單例,簡(jiǎn)單來說,單例主要適用于以下三個(gè)方面

第一,控制資源的使用,通過線程同步來控制資源的并發(fā)訪問

第二,控制實(shí)例的產(chǎn)生,以達(dá)到節(jié)約資源的目的

第三,控制數(shù)據(jù)共享,在不建立直接關(guān)聯(lián)的條件下,讓多個(gè)不相關(guān)的進(jìn)程或線程之間實(shí)現(xiàn)通信

2.盡量避免隨意使用靜態(tài)變量

要知道,當(dāng)某個(gè)對(duì)象被定義為stataic變量所引用,那么gc通常是不會(huì)回收這個(gè)對(duì)象所占有的內(nèi)存,如

public class A{

static B b = new B();

}

此時(shí)靜態(tài)變量b的生命周期與A類同步,如果A類不會(huì)卸載,那么b對(duì)象會(huì)常駐內(nèi)存,直到程序終止。

3.盡量避免過多過常的創(chuàng)建java對(duì)象

盡量避免在經(jīng)常調(diào)用的方法,循環(huán)中new對(duì)象,由于系統(tǒng)不僅要花費(fèi)時(shí)間來創(chuàng)建對(duì)象,而且還要花時(shí)間對(duì)這些對(duì)象進(jìn)行垃圾回收和處理,在我們可以控制的范圍內(nèi),最大限度的重用對(duì)象,最好能用基本的數(shù)據(jù)類型或數(shù)組來替代對(duì)象。

4.盡量使用final修飾符

帶有final修飾符的類是不可派生的。在Java核心API中,有許多應(yīng)用final的例子,例如java.lang.String。為String類指定final防止了使用者覆蓋length()方法。另外,如果一個(gè)類是final的,則該類所有方法都是final的。java編譯器會(huì)尋找機(jī)會(huì)內(nèi)聯(lián)(inline)所有的final方法(這和具體的編譯器實(shí)現(xiàn)有關(guān))。此舉能夠使性能平均提高50%。

5.盡量使用局部變量

調(diào)用方法時(shí)傳遞的參數(shù)以及在調(diào)用中創(chuàng)建的臨時(shí)變量都保存在棧(Stack)中,速度較快。其他變量,如靜態(tài)變量,實(shí)例變量等,都在堆(Heap)中創(chuàng)建,速度較慢。

6.盡量處理好包裝類型和基本類型兩者的使用場(chǎng)所

雖然包裝類型和基本類型在使用過程中是可以相互轉(zhuǎn)換,但它們兩者所產(chǎn)生的內(nèi)存區(qū)域是完全不同的,基本類型數(shù)據(jù)產(chǎn)生和處理都在棧中處理,包裝類型是對(duì)象,是在堆中產(chǎn)生實(shí)例。

在集合類對(duì)象,有對(duì)象方面需要的處理適用包裝類型,其他的處理提倡使用基本類型。

7.慎用synchronized,盡量減小synchronize的方法

都知道,實(shí)現(xiàn)同步是要很大的系統(tǒng)開銷作為代價(jià)的,甚至可能造成死鎖,所以盡量避免無謂的同步控制。synchronize方法被調(diào)用時(shí),直接會(huì)把當(dāng)前對(duì)象鎖了,在方法執(zhí)行完之前其他線程無法調(diào)用當(dāng)前對(duì)象的其他方法。所以synchronize的方法盡量小,并且應(yīng)盡量使用方法同步代替代碼塊同步。

8.盡量使用StringBuilderStringBuffer進(jìn)行字符串連接

這個(gè)就不多講了

9.盡量不要使用finalize方法

實(shí)際上,將資源清理放在finalize方法中完成是非常不好的選擇,由于GC的工作量很大,尤其是回收Young代內(nèi)存時(shí),大都會(huì)引起應(yīng)用程序暫停,所以再選擇使用finalize方法進(jìn)行資源清理,會(huì)導(dǎo)致GC負(fù)擔(dān)更大,程序運(yùn)行效率更差。

10.盡量使用基本數(shù)據(jù)類型代替對(duì)象

String str = "hello";

上面這種方式會(huì)創(chuàng)建一個(gè)“hello”字符串,而且JVM的字符緩存池還會(huì)緩存這個(gè)字符串;

String str = new String("hello");

此時(shí)程序除創(chuàng)建字符串外,str所引用的String對(duì)象底層還包含一個(gè)char[]數(shù)組,這個(gè)char[]數(shù)組依次存放了h,e,l,l,o

11.單線程應(yīng)盡量使用HashMap, ArrayList

HashTable,Vector等使用了同步機(jī)制,降低了性能。

12.盡量合理的創(chuàng)建HashMap

當(dāng)你要?jiǎng)?chuàng)建一個(gè)比較大的hashMap時(shí),充分利用另一個(gè)構(gòu)造函數(shù)

public HashMap(int initialCapacity, float loadFactor)

避免HashMap多次進(jìn)行了hash重構(gòu),擴(kuò)容是一件很耗費(fèi)性能的事,在默認(rèn)中initialCapacity只有16,而loadFactor0.75,需要多大的容量,你最好能準(zhǔn)確的估計(jì)你所需要的最佳大小,同樣的Hashtable,Vectors也是一樣的道理。

13.盡量減少對(duì)變量的重復(fù)計(jì)算

for(int i=0;i

應(yīng)該改為

for(int i=0,len=list.size();i

并且在循環(huán)中應(yīng)該避免使用復(fù)雜的表達(dá)式,在循環(huán)中,循環(huán)條件會(huì)被反復(fù)計(jì)算,如果不使用復(fù)雜表達(dá)式,而使循環(huán)條件值不變的話,程序?qū)?huì)運(yùn)行的更快。

北大青鳥網(wǎng)上報(bào)名
北大青鳥招生簡(jiǎn)章
久久天堂一区二区三区_国内精品久久久久影院网站_亚洲国产一区二区三区最新_亚洲国产一区二区三区四区五区

      国产精品腿扒开做爽爽爽挤奶网站| 亚洲激情图片小说视频| 午夜在线视频观看日韩17c| 一区二区三区在线视频观看| 欧美日韩在线免费| 久久婷婷综合激情| 亚洲欧美在线免费观看| 亚洲欧洲一区二区在线播放| 国产性色一区二区| 国产精品www网站| 欧美精品免费在线| 欧美成年人视频网站| 久久国产欧美| 欧美亚洲一级| 亚洲欧美精品suv| 亚洲一区二区三| 99热精品在线观看| 亚洲人午夜精品| 亚洲人成在线播放| 亚洲国内精品| 91久久国产综合久久| 亚洲高清成人| 91久久综合亚洲鲁鲁五月天| 在线观看视频免费一区二区三区| 国产一区二区毛片| 国产日韩欧美自拍| 国产一区二区黄色| 狠狠色丁香婷婷综合影院| 国产日韩精品一区二区| 国产精品网站在线| 国产九区一区在线| 韩国在线视频一区| 伊人激情综合| 最新成人av在线| 日韩亚洲欧美高清| 夜夜嗨av一区二区三区四季av| 日韩系列在线| 亚洲一区在线直播| 性色av一区二区三区| 久久久99国产精品免费| 久久久久久久久久久久久9999| 久久久久久久性| 欧美成人国产| 欧美午夜一区二区| 国产午夜精品全部视频在线播放| 国产午夜精品视频| 亚洲风情在线资源站| 亚洲免费播放| 欧美一区成人| 欧美a级理论片| 国产精品jvid在线观看蜜臀 | 一道本一区二区| 午夜精品久久| 欧美大尺度在线观看| 欧美视频一区二区三区四区| 国产亚洲一区在线播放| 亚洲精品1区2区| 午夜久久黄色| 欧美激情在线狂野欧美精品| 国产精品美女久久福利网站| 伊人久久大香线| 亚洲桃花岛网站| 牛牛国产精品| 国产一区欧美日韩| 亚洲作爱视频| 久久国产欧美日韩精品| 欧美激情中文字幕一区二区 | 激情综合久久| 在线视频欧美一区| 欧美一区二视频| 久久综合图片| 国产精品日韩高清| av成人手机在线| 欧美 日韩 国产在线| 国产日韩在线看片| 亚洲视频一区二区| 欧美国产另类| 在线观看日韩| 久久久久久九九九九| 国产精品久久久久久av福利软件| 亚洲国产另类 国产精品国产免费| 亚洲综合电影| 国产精品黄页免费高清在线观看| 在线观看国产精品网站| 久久国产精品久久国产精品 | 欧美在线视频a| 国产精品高清免费在线观看| 亚洲精品国产精品国自产观看浪潮 | 亚洲一区亚洲| 欧美日韩在线精品| 一区二区三区|亚洲午夜| 美女尤物久久精品| 亚洲国产精彩中文乱码av在线播放| 欧美一级欧美一级在线播放| 国产精品福利在线观看网址| 一区二区三区高清不卡| 欧美精品www| 亚洲美女中出| 欧美系列亚洲系列| 亚洲一区欧美| 国产偷自视频区视频一区二区| 午夜免费久久久久| 国产日韩综合一区二区性色av| 亚洲欧美美女| 国产一区久久| 久久综合免费视频影院| 1000部国产精品成人观看| 老鸭窝91久久精品色噜噜导演| 在线成人小视频| 欧美激情亚洲精品| 在线视频你懂得一区二区三区| 国产精品video| 午夜精品久久久久| 娇妻被交换粗又大又硬视频欧美| 久久久欧美一区二区| 一区二区在线观看av| 欧美精品麻豆| 亚洲欧美日韩国产综合| 伊人久久噜噜噜躁狠狠躁| 欧美国产免费| 性久久久久久| 亚洲欧洲日本一区二区三区| 欧美午夜精品一区| 久久精品亚洲一区| 亚洲精品一区在线观看| 国产精品老牛| 欧美大片在线看| 性久久久久久久久久久久| 亚洲国产美国国产综合一区二区| 欧美日韩网址| 卡通动漫国产精品| 亚洲性xxxx| 最新精品在线| 国内欧美视频一区二区| 欧美视频在线观看 亚洲欧| 久久久另类综合| 99在线热播精品免费| 韩国在线一区| 国产精品视频一二| 欧美大秀在线观看| 久久激情视频| 午夜久久美女| 一本色道精品久久一区二区三区 | 在线播放豆国产99亚洲| 国产精品久久二区二区| 欧美国产一区二区在线观看| 亚欧成人在线| 亚洲在线免费观看| 日韩视频免费在线观看| 红桃视频国产一区| 国产日韩欧美在线| 国产精品卡一卡二卡三| 欧美激情中文字幕乱码免费| 久久久美女艺术照精彩视频福利播放| 亚洲无限av看| 在线视频中文亚洲| 日韩一二在线观看| 亚洲免费高清视频| 亚洲人成在线观看一区二区| 黄色亚洲网站| 在线观看亚洲精品视频| 激情久久久久久| 欧美巨乳在线| 欧美另类99xxxxx| 欧美精品v日韩精品v国产精品 | 欧美激情一级片一区二区| 久久一区激情| 毛片av中文字幕一区二区| 欧美亚洲综合另类| 久久99伊人| 久久久久国产精品厨房| 久久精品1区| 久久综合久久综合九色| 美女脱光内衣内裤视频久久影院| 久久久综合网| 欧美大片免费观看在线观看网站推荐 | 激情av一区| 亚洲国产一区二区a毛片| 亚洲福利视频专区| 亚洲精品视频在线看| 99国内精品| 午夜精品在线视频| 久久一区激情| 欧美日韩福利视频| 国产精品网站在线| 激情一区二区三区| 亚洲美女av黄| 午夜亚洲福利| 欧美二区不卡| 国产精品免费一区二区三区在线观看| 国产精品免费网站| 曰韩精品一区二区| 一区二区三区免费在线观看| 亚洲欧美影音先锋| 久久一区二区三区四区| 欧美日韩国产一区精品一区 | 国产日韩欧美a| 亚洲激情影院| 午夜视频在线观看一区二区| 欧美ed2k|