五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

Java筆記--Object類

2023-09-09 14:02 作者:爪哇島江戶川  | 我要投稿

Object類是所有對(duì)象的父類,也稱基類,超類。

一、toString( );方法

作用:返回該對(duì)象的字符串表示。

我們新建一個(gè)A類,然后創(chuàng)建A類的對(duì)象a,然后分別打印a和a.toString( ),發(fā)現(xiàn)打印結(jié)果是相同的,因?yàn)榇蛴?duì)象名時(shí),會(huì)默認(rèn)調(diào)用該對(duì)象的toString方法。

我們進(jìn)入toString的源碼看一看:

其中g(shù)etClass( ).getName( ):類名稱,全類名(包名+類名)。

"@":分隔符。

Integer.toHexString( ):將傳入的參數(shù)轉(zhuǎn)換為十六進(jìn)制,以字符串形式表示。

hashCode( ):返回的是對(duì)象地址+哈希算法,算出來的整數(shù)(哈希值)。

如果我們想要看到對(duì)象的屬性信息,只需要在JavaBean中重寫toString方法。

二、equals( );方法

指示其他某個(gè)對(duì)象是否與此對(duì)象“相等”。

Object類中的equals方法默認(rèn)比較對(duì)象的內(nèi)存地址。

那既然比交的是對(duì)象的地址我們還不如用“==”。

所以如果我們不滿意equals方法的內(nèi)容,我們可以重寫equals方法。

我們來看一看IDEA為我們生成的equals重寫方法:

this:誰調(diào)用誰就是this,傳入的參數(shù)就是o;

this == o;是讓兩個(gè)對(duì)象的地址作比較,如果對(duì)象的地址相同直接返回true;

如果地址不相同繼續(xù)往下走:

如果o = null,直接返回false,代碼如果走到這里,this一定不等于null,因?yàn)槿绻鹴his等于null會(huì)空指針異常,既然this不是null,o是null,一定不相等。

this.Class != o.getClass;是比較兩個(gè)的字節(jié)碼文件是否相同,如果字節(jié)碼文件相同,這兩個(gè)對(duì)象就是同一個(gè)類型。

Objects:

Objects類繼承于Object類,從jdk1.7開始的。

Objects所使用的equals依賴于我們自己所重寫的equals方法。

Objects的好處:內(nèi)部帶有一個(gè)非空判斷。

假設(shè)stu1為null的情況下

我們?nèi)フ{(diào)用這個(gè)equals方法

一定會(huì)引發(fā)空指針異常

如果我們使用Objects去調(diào)用equals這個(gè)方法

雖然我們的stu1是null,但是并沒有引發(fā)異常,程序還可以繼續(xù)往下走。


Java筆記--Object類的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
广宁县| 酉阳| 大足县| 台江县| 德江县| 霍山县| 玛沁县| 木兰县| 文登市| 手游| 塔城市| 江陵县| 柏乡县| 阿克陶县| 林口县| 恭城| 离岛区| 波密县| 新绛县| 介休市| 巴青县| 桐梓县| 怀化市| 贵港市| 西畴县| 马山县| 奇台县| 湟中县| 丰台区| 宜宾县| 贺兰县| 巩义市| 壶关县| 镇雄县| 彭泽县| 肥乡县| 岗巴县| 榕江县| 台中县| 睢宁县| 新邵县|