2018-01-09學(xué)習(xí)內(nèi)容

? ? ? 類的生命周期:? ? ? ? ?1.加載蜓陌,查找并加載類的二進(jìn)制數(shù)據(jù),在Java堆中也創(chuàng)建一個(gè)java.lang.Class類的對(duì)象 ?? ???? 2.連接,連接又包含三塊內(nèi)容:驗(yàn)證匾七、準(zhǔn)備、初始化江兢。1)驗(yàn)證昨忆,文件格式、元數(shù)據(jù)杉允、字節(jié)碼邑贴、符號(hào)引用驗(yàn)證;2)準(zhǔn)備叔磷,為類的靜態(tài)變量分配內(nèi)存拢驾,并將其初始化為默認(rèn)值;3)解析改基,把類中的符號(hào)引用轉(zhuǎn)換為直接引用 ?? ???? 3.初始化繁疤,為類的靜態(tài)變量賦予正確的初始值 ?? ???? 4.使用,new出對(duì)象程序中使用 ?? ???? 5.卸載秕狰,執(zhí)行垃圾回收

?五.類加載器

?? ???? 1.啟動(dòng)類加載器:Bootstrap ClassLoader稠腊,負(fù)責(zé)加載存放在JDK\jre\lib(JDK代表JDK的安裝目錄,下同)下鸣哀,或被-Xbootclasspath參數(shù)指定的路徑中的架忌,并且能被虛擬機(jī)識(shí)別的類庫(kù)

?? ???? 2.擴(kuò)展類加載器:Extension ClassLoader,該加載器由sun.misc.Launcher$ExtClassLoader實(shí)現(xiàn)我衬,它負(fù)責(zé)加載DK\jre\lib\ext目錄中叹放,或者由java.ext.dirs系統(tǒng)變量指定的路徑中的所有類庫(kù)(如javax.*開頭的類),開發(fā)者可以直接使用擴(kuò)展類加載器挠羔。

?? ???? 3.應(yīng)用程序類加載器:Application ClassLoader井仰,該類加載器由sun.misc.Launcher$AppClassLoader來(lái)實(shí)現(xiàn),它負(fù)責(zé)加載用戶類路徑(ClassPath)所指定的類破加,開發(fā)者可以直接使用該類加載器


九.GC算法

?? ?GC最基礎(chǔ)的算法有三種:標(biāo)記 -清除算法糕档、復(fù)制算法、標(biāo)記-壓縮算法拌喉,我們常用的垃圾回收器一般都采用分代收集算法速那。

?? ???? 1.標(biāo)記 -清除算法,“標(biāo)記-清除”(Mark-Sweep)算法尿背,如它的名字一樣端仰,算法分為“標(biāo)記”和“清除”兩個(gè)階段:首先標(biāo)記出所有需要回收的對(duì)象,在標(biāo)記完成后統(tǒng)一回收掉所有被標(biāo)記的對(duì)象田藐。

?? ???? 2.復(fù)制算法荔烧,“復(fù)制”(Copying)的收集算法吱七,它將可用內(nèi)存按容量劃分為大小相等的兩塊,每次只使用其中的一塊鹤竭。當(dāng)這一塊的內(nèi)存用完了踊餐,就將還存活著的對(duì)象復(fù)制到另外一塊上面,然后再把已使用過(guò)的內(nèi)存空間一次清理掉臀稚。

?? ???? 3.標(biāo)記-壓縮算法吝岭,標(biāo)記過(guò)程仍然與“標(biāo)記-清除”算法一樣,但后續(xù)步驟不是直接對(duì)可回收對(duì)象進(jìn)行清理吧寺,而是讓所有存活的對(duì)象都向一端移動(dòng)窜管,然后直接清理掉端邊界以外的內(nèi)存

?? ???? 4.分代收集算法,“分代收集”(Generational Collection)算法稚机,把Java堆分為新生代和老年代幕帆,這樣就可以根據(jù)各個(gè)年代的特點(diǎn)采用最適當(dāng)?shù)氖占惴ā?/p>

匿名內(nèi)部類的使用:

匿名內(nèi)部類是沒有名字的類,只在某一處被使用赖条,不會(huì)被多處調(diào)用失乾,一般是某個(gè)父類或接口的特定實(shí)現(xiàn)。

強(qiáng)引用纬乍、軟引用仗扬、弱引用和虛引用:

強(qiáng)引用: 一般的引用都是強(qiáng)引用,即使OutOfMemory也不會(huì)回收這部分被把持的引用內(nèi)存蕾额。

軟引用(SoftReference): 如果內(nèi)存空間足夠,垃圾回收器就不會(huì)回收它彼城;如果內(nèi)存空間不足了诅蝶,就會(huì)回收這些對(duì)象的內(nèi)存。只要垃圾回收器沒有回收它募壕,該對(duì)象就可以被使用调炬。++軟引用可以用來(lái)實(shí)現(xiàn)內(nèi)存敏感的高速緩存。++

弱引用(WeakReference):弱引用的對(duì)象擁有更短暫的生命周期舱馅。當(dāng)垃圾回收期發(fā)現(xiàn)只有若引用的對(duì)象缰泡,不論內(nèi)存空間足夠與否,都會(huì)回收它代嗤。

虛引用():虛引用不會(huì)決定對(duì)象的生命周期棘钞,如果一個(gè)對(duì)象僅持有一個(gè)虛引用,那么它隨時(shí)可能被回收干毅。++虛引用主要用來(lái)跟蹤對(duì)象被垃圾回收器回收的活動(dòng)宜猜。++


接口和抽象類有什么區(qū)別

2、抽象類要被子類繼承硝逢,接口要被類實(shí)現(xiàn)姨拥。

3绅喉、接口只能做方法申明,抽象類中可以做方法申明叫乌,也可以做方法實(shí)現(xiàn)

接口里面的方法變量都是public的柴罐,但是抽象類 可以有自己的私有方法和實(shí)現(xiàn) 繼承抽象類必須實(shí)現(xiàn)里面所有的抽象方法不然也會(huì)變成抽象類

final的用法(final變量一旦被初始化賦值之后,就不能再被賦值了):

可以用來(lái)修飾變量憨奸,類革屠,方法;

當(dāng)用final修飾一個(gè)類時(shí)膀藐,表明這個(gè)類不能被繼承屠阻。也就是說(shuō),如果一個(gè)類你永遠(yuǎn)不會(huì)讓他被繼承额各,就可以用final進(jìn)行修飾国觉。final類中的成員變量可以根據(jù)需要設(shè)為final,但是要注意final類中的所有成員方法都會(huì)被隱式地指定為final方法虾啦。

使用final方法的原因有兩個(gè)麻诀。第一個(gè)原因是把方法鎖定,以防任何繼承類修改它的含義傲醉;第二個(gè)原因是效率蝇闭。在早期的Java實(shí)現(xiàn)版本中,會(huì)將final方法轉(zhuǎn)為內(nèi)嵌調(diào)用硬毕。但是如果方法過(guò)于龐大呻引,可能看不到內(nèi)嵌調(diào)用帶來(lái)的任何性能提升。在最近的Java版本中吐咳,不需要使用final方法進(jìn)行這些優(yōu)化了逻悠。“

因此韭脊,如果只有在想明確禁止 該方法在子類中被覆蓋的情況下才將方法設(shè)置為final的童谒。

對(duì)于一個(gè)final變量,如果是基本數(shù)據(jù)類型的變量沪羔,則其數(shù)值一旦在初始化之后便不能更改饥伊;如果是引用類型的變量,則在對(duì)其初始化之后便不能再讓其指向另一個(gè)對(duì)象

? static final用來(lái)修飾成員變量和成員方法蔫饰,可簡(jiǎn)單理解為“全局常量”琅豆!

??????? 對(duì)于變量,表示一旦給值就不可修改篓吁,并且通過(guò)類名可以訪問(wèn)趋距。

??????? 對(duì)于方法,表示不可覆蓋越除,并且可以通過(guò)類名直接訪問(wèn)节腐。

被static修飾的成員變量和成員方法獨(dú)立于該類的任何對(duì)象外盯。也就是說(shuō),它不依賴類特定的實(shí)例翼雀,被類的所有實(shí)例共享饱苟。只要這個(gè)類被加載,Java虛擬機(jī)就能根據(jù)類名在運(yùn)行時(shí)數(shù)據(jù)區(qū)的方法區(qū)內(nèi)定找到他們狼渊。因此箱熬,static對(duì)象可以在它的任何對(duì)象創(chuàng)建之前訪問(wèn),無(wú)需引用任何對(duì)象狈邑。

泛型的使用:個(gè)人覺得是一種規(guī)范城须,類似標(biāo)準(zhǔn)的接口? 定義泛型變量 可以做一些通用的類處理<?> 比起最早使用的object 更加優(yōu)雅規(guī)范一些

spring 控制反轉(zhuǎn)? 面向切面:http://blog.csdn.net/luoshenfu001/article/details/5816408

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市米苹,隨后出現(xiàn)的幾起案子糕伐,更是在濱河造成了極大的恐慌,老刑警劉巖蘸嘶,帶你破解...
    沈念sama閱讀 207,248評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件良瞧,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡训唱,警方通過(guò)查閱死者的電腦和手機(jī)褥蚯,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,681評(píng)論 2 381
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)况增,“玉大人赞庶,你說(shuō)我怎么就攤上這事“闹瑁” “怎么了歧强?”我有些...
    開封第一講書人閱讀 153,443評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)宴凉。 經(jīng)常有香客問(wèn)我,道長(zhǎng)表悬,這世上最難降的妖魔是什么弥锄? 我笑而不...
    開封第一講書人閱讀 55,475評(píng)論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮蟆沫,結(jié)果婚禮上籽暇,老公的妹妹穿的比我還像新娘。我一直安慰自己饭庞,他們只是感情好戒悠,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,458評(píng)論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著舟山,像睡著了一般绸狐。 火紅的嫁衣襯著肌膚如雪卤恳。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,185評(píng)論 1 284
  • 那天寒矿,我揣著相機(jī)與錄音突琳,去河邊找鬼。 笑死符相,一個(gè)胖子當(dāng)著我的面吹牛拆融,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播啊终,決...
    沈念sama閱讀 38,451評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼镜豹,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了蓝牲?” 一聲冷哼從身側(cè)響起趟脂,我...
    開封第一講書人閱讀 37,112評(píng)論 0 261
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎搞旭,沒想到半個(gè)月后散怖,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,609評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡肄渗,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,083評(píng)論 2 325
  • 正文 我和宋清朗相戀三年镇眷,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片翎嫡。...
    茶點(diǎn)故事閱讀 38,163評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡欠动,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出惑申,到底是詐尸還是另有隱情具伍,我是刑警寧澤,帶...
    沈念sama閱讀 33,803評(píng)論 4 323
  • 正文 年R本政府宣布圈驼,位于F島的核電站人芽,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏绩脆。R本人自食惡果不足惜萤厅,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,357評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望靴迫。 院中可真熱鬧惕味,春花似錦、人聲如沸玉锌。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,357評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)主守。三九已至禀倔,卻和暖如春榄融,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背蹋艺。 一陣腳步聲響...
    開封第一講書人閱讀 31,590評(píng)論 1 261
  • 我被黑心中介騙來(lái)泰國(guó)打工剃袍, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人捎谨。 一個(gè)月前我還...
    沈念sama閱讀 45,636評(píng)論 2 355
  • 正文 我出身青樓民效,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親涛救。 傳聞我的和親對(duì)象是個(gè)殘疾皇子畏邢,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,925評(píng)論 2 344

推薦閱讀更多精彩內(nèi)容

  • 從三月份找實(shí)習(xí)到現(xiàn)在,面了一些公司检吆,掛了不少舒萎,但最終還是拿到小米、百度蹭沛、阿里臂寝、京東、新浪摊灭、CVTE咆贬、樂視家的研發(fā)崗...
    時(shí)芥藍(lán)閱讀 42,194評(píng)論 11 349
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語(yǔ)法,類相關(guān)的語(yǔ)法帚呼,內(nèi)部類的語(yǔ)法掏缎,繼承相關(guān)的語(yǔ)法,異常的語(yǔ)法煤杀,線程的語(yǔ)...
    子非魚_t_閱讀 31,587評(píng)論 18 399
  • 所有知識(shí)點(diǎn)已整理成app app下載地址 J2EE 部分: 1.Switch能否用string做參數(shù)眷蜈? 在 Jav...
    侯蛋蛋_閱讀 2,410評(píng)論 1 4
  • 一、運(yùn)行時(shí)數(shù)據(jù)區(qū)域 Java虛擬機(jī)管理的內(nèi)存包括幾個(gè)運(yùn)行時(shí)數(shù)據(jù)內(nèi)存:方法區(qū)沈自、虛擬機(jī)棧酌儒、本地方法棧、堆枯途、程序計(jì)數(shù)器忌怎,...
    加油小杜閱讀 1,511評(píng)論 1 15
  • 秀恩愛死得快有些情侶博愛地恨不能向天下人昭告他們的幸福,這就讓單身人備受刺激柔袁。就好比你有錢倒也罷了呆躲,還TM特意在我...
    遺棄小屋閱讀 808評(píng)論 0 3