1.Object類源碼解析

Object 是所有類的基類褥蚯,很重要挚冤。

1.

這是第一個(gè)方法,用static 赞庶,native修飾训挡,意思是一個(gè)本地方法,具體是用C(C++)在DLL中實(shí)現(xiàn)的澜薄,然后通過JNI調(diào)用,然后使用static 靜態(tài)代碼塊誊锭,在對(duì)象初始化時(shí)自動(dòng)調(diào)用該方法表悬。

2.


返回運(yùn)行時(shí)的類,意思就是說類對(duì)象的運(yùn)行時(shí)類的Class對(duì)象丧靡◇∧可以看到這個(gè)方法使用final 修飾,所以他不能被子類覆蓋温治。當(dāng)你這樣寫:super.getClass().getName()的時(shí)候并不會(huì)返回他老爸的類饭庞,只會(huì)返回運(yùn)行時(shí)的類

3.


返回hashCode。博主在看源碼的時(shí)候才發(fā)現(xiàn)其實(shí)hashCode返回的是一個(gè)int 類型熬荆,博主一直以為是一個(gè)String類型舟山,hashCode 一個(gè)用途是在equals()比較的時(shí)候,當(dāng)兩個(gè)對(duì)象 equals()為True 那么這兩個(gè)類的hashCode 值一定相同,但是當(dāng)兩個(gè)hashCode 值相同的時(shí)候累盗,equals()卻不一定為true寒矿,所以有時(shí)候如果需要循環(huán)equals比較的時(shí)候,其實(shí)可以先取hashCode 比較一下如果hashCode都不一樣那么equals ()一定不一樣若债,沒必要往下走符相,這樣可以提高效率,因?yàn)閔ashCode 的執(zhí)行效率要比equals 要高蠢琳。

4.


判斷兩個(gè)object是否相等主要有如下四個(gè)特性(對(duì)于任何非空引用值 x 和 y):自反性:x.equals(x) = true啊终。對(duì)稱性:y.equals(x) = true 時(shí),x.equals(y) = true傲须,傳遞性:如果 x.equals(y) =true,y.equals(z)=true, 那么?x.equals(z) =true,一致性:當(dāng)比較的東西沒有被修改時(shí)蓝牲,多次調(diào)用 x.equals(y) 始終返回 true 或始終返回 false.

5.

clone方法,首先他有一個(gè)CloneNotSupportedException異常泰讽,所有被克隆的類一定要實(shí)現(xiàn)Cloneable 接口否則會(huì)拋出這個(gè)異常例衍,Cloneable沒有具體實(shí)現(xiàn),要想實(shí)現(xiàn)必須自己手動(dòng)實(shí)現(xiàn) 已卸。當(dāng)然數(shù)組類型默認(rèn)都是實(shí)現(xiàn)的(這里的克隆其實(shí)是淺拷貝肄渗,不是深拷貝)。還有一點(diǎn)他是protected 類型咬最,也就是說在一個(gè)包中和public是一樣的翎嫡,但是在包外使用要注意。

6.


tostring()永乌,默認(rèn)返回的是對(duì)象的字符串表達(dá)形式也就是(對(duì)象名和hashcod碼)惑申,一般情況下都是會(huì)去重寫它的。

7.

這里我們把notify()翅雏、notifyAll()圈驼、wait() 放一起講,首先wait()方法就是說將該對(duì)象的控制權(quán)握在自己手里望几,一直處于等待狀態(tài)绩脆,直到被notify()或者notifyAll()喚醒,這幾個(gè)方法主要為線程同步而準(zhǔn)備的橄抹。notify()如果被調(diào)用靴迫,就會(huì)喚醒別的線程(隨隨機(jī)一個(gè))去繼續(xù)運(yùn)行該對(duì)象,notifyAll()如果被調(diào)用楼誓,所有等待該對(duì)象的控制器線程繼續(xù)運(yùn)行玉锌。

8.


finalize(),可以理解為在GC垃圾回收的時(shí)候執(zhí)行該方法疟羹。


PS:哪里不對(duì)可以在評(píng)論中指出主守,我都會(huì)一個(gè)個(gè)看的禀倔,覺得少東西也可以評(píng)論中提出來,我會(huì)做補(bǔ)充参淫。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末救湖,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子涎才,更是在濱河造成了極大的恐慌捎谨,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,682評(píng)論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件憔维,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡畏邢,警方通過查閱死者的電腦和手機(jī)业扒,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,277評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來舒萎,“玉大人程储,你說我怎么就攤上這事”矍蓿” “怎么了章鲤?”我有些...
    開封第一講書人閱讀 165,083評(píng)論 0 355
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)咆贬。 經(jīng)常有香客問我败徊,道長(zhǎng),這世上最難降的妖魔是什么掏缎? 我笑而不...
    開封第一講書人閱讀 58,763評(píng)論 1 295
  • 正文 為了忘掉前任皱蹦,我火速辦了婚禮,結(jié)果婚禮上眷蜈,老公的妹妹穿的比我還像新娘沪哺。我一直安慰自己,他們只是感情好酌儒,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,785評(píng)論 6 392
  • 文/花漫 我一把揭開白布辜妓。 她就那樣靜靜地躺著,像睡著了一般忌怎。 火紅的嫁衣襯著肌膚如雪籍滴。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,624評(píng)論 1 305
  • 那天榴啸,我揣著相機(jī)與錄音异逐,去河邊找鬼。 笑死插掂,一個(gè)胖子當(dāng)著我的面吹牛灰瞻,可吹牛的內(nèi)容都是我干的腥例。 我是一名探鬼主播,決...
    沈念sama閱讀 40,358評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼酝润,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼燎竖!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起要销,我...
    開封第一講書人閱讀 39,261評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤构回,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后疏咐,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體纤掸,經(jīng)...
    沈念sama閱讀 45,722評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,900評(píng)論 3 336
  • 正文 我和宋清朗相戀三年浑塞,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了借跪。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,030評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡酌壕,死狀恐怖掏愁,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情卵牍,我是刑警寧澤果港,帶...
    沈念sama閱讀 35,737評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站糊昙,受9級(jí)特大地震影響辛掠,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜释牺,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,360評(píng)論 3 330
  • 文/蒙蒙 一公浪、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧船侧,春花似錦欠气、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,941評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至袁梗,卻和暖如春宜鸯,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背遮怜。 一陣腳步聲響...
    開封第一講書人閱讀 33,057評(píng)論 1 270
  • 我被黑心中介騙來泰國(guó)打工淋袖, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人锯梁。 一個(gè)月前我還...
    沈念sama閱讀 48,237評(píng)論 3 371
  • 正文 我出身青樓即碗,卻偏偏與公主長(zhǎng)得像焰情,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子剥懒,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,976評(píng)論 2 355

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

  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語(yǔ)法内舟,類相關(guān)的語(yǔ)法,內(nèi)部類的語(yǔ)法初橘,繼承相關(guān)的語(yǔ)法劣摇,異常的語(yǔ)法邢笙,線程的語(yǔ)...
    子非魚_t_閱讀 31,639評(píng)論 18 399
  • Java中的Object類是所有類的父類,它提供了以下11個(gè)方法: public final native Cla...
    CHSmile閱讀 493評(píng)論 0 0
  • 曾經(jīng)通熄,從一個(gè)小鄉(xiāng)村來到一線城市讀書乾颁,剛到之時(shí)触菜,還真不大適應(yīng)影晓,人來人往岩调,車水馬龍,節(jié)奏也快盐肃,空氣不大好……當(dāng)時(shí)在來的...
    fayeeechan閱讀 195評(píng)論 0 0
  • 文字形成詩(shī)句的過程 只有筆者知道多美妙 _______清凈獨(dú)覺
    清凈獨(dú)覺閱讀 208評(píng)論 5 25
  • 之前提過我有個(gè)老友,典型的糾結(jié)狂权悟。不知道在心理學(xué)上有什么專業(yè)術(shù)語(yǔ)來稱呼嘛砸王。 此女昨天約我,要傾訴一下買房子的事情峦阁。...
    Cherry宋閱讀 246評(píng)論 0 0