![Avatar notebook default](https://cdn2.jianshu.io/assets/default_avatar/avatar-notebook-default-640f7dde88592bdf6417d8ce1902636e.png)
思路 開啟打印GC日志的參數(shù)瓦糟;-XX:+PrintGCDetails-XX:+PrintGCTimeStamps-XX:+PrintGCDate...
Parallel GC日志文件示例 server模式下模式的GC; 相關(guān)參數(shù):-XX:+PrintGCDetails-XX:+PrintGCTi...
盡量重用對(duì)象,不要循環(huán)創(chuàng)建對(duì)象,比如在for循環(huán)中進(jìn)行字符串拼接,或者用原型模式提升性能濒持; 容器類初始化的時(shí)候指定長(zhǎng)度,比如List coll...
類寺滚、方法柑营、變量盡量指定fina修飾; 字符串拼接背后不一定是StringBuilder村视,還可能發(fā)生了編譯時(shí)替換官套; 用final修飾的字符串在拼接...
程序輸出 hello 程序運(yùn)行分析 通過字節(jié)碼可以看到,程序在執(zhí)行return之前蚁孔,執(zhí)行了finally塊中的代碼奶赔; finally塊中的代碼對(duì)...
答案 如果在循環(huán)體中用 “+” 拼接字符串杠氢,每次循環(huán)都會(huì)new一個(gè)StringBuilder站刑;而在循環(huán)體外面先把StringBuilder創(chuàng)建出...
結(jié)論 效率一樣鼻百! 原因 2個(gè)for循環(huán)中的代碼绞旅,編譯成字節(jié)碼完全一樣,故for循環(huán)中的i++和++i效率一樣温艇;
棧上分配 將線程獨(dú)有的對(duì)象打散分配在Java棧上因悲,而不是堆上;棧上的對(duì)象隨著方法調(diào)用的結(jié)束而銷毀勺爱,繼而不需要GC便可回收內(nèi)存空間晃琳; 逃逸分析:分...
常量入棧(操作數(shù)棧)指令 bipush[1] sipush[2] aconst_null iconst_m1[3] iconst_x[4] lc...