基礎(chǔ)入門Java中object類的方法

基礎(chǔ)入門Java中object類的方法

長(zhǎng)沙一度軟件培訓(xùn)      2022-03-31 03:40:01     35

基礎(chǔ)入門Java中object類的方法,Java中的Object方法在面試中是一個(gè)非常高頻的點(diǎn),畢竟Object是所有類的老祖宗。Java中所有的類都有一個(gè)共同的祖先Object類,子類

課程價(jià)格 請(qǐng)咨詢

上課時(shí)段: 授課校區(qū):

詳細(xì)介紹

    Java中的Object方法在面試中是一個(gè)非常高頻的點(diǎn),畢竟Object是所有類的“老祖宗”。Java中所有的類都有一個(gè)共同的祖先Object類,子類都會(huì)繼承所有Object類中的public方法。

    先看下Object的類結(jié)構(gòu)(快捷鍵:alt+7):

    1.getClass方法

    final方法、獲取對(duì)象的運(yùn)行時(shí)class對(duì)象,class對(duì)象就是描述對(duì)象所屬類的對(duì)象。這個(gè)方法通常是和Java反射機(jī)制搭配使用的。

    2.hashCode方法

    該方法主要用于獲取對(duì)象的散列值。Object中該方法默認(rèn)返回的是對(duì)象的堆內(nèi)存地址。

    3.equals方法

    該方法用于比較兩個(gè)對(duì)象,如果這兩個(gè)對(duì)象引用指向的是同一個(gè)對(duì)象,那么返回true,否則返回false。一般equals和==是不一樣的,但是在Object中兩者是一樣的。子類一般都要重寫這個(gè)方法。

    4.clone方法

    該方法是保護(hù)方法,實(shí)現(xiàn)對(duì)象的淺復(fù)制,只有實(shí)現(xiàn)了Cloneable接口才可以調(diào)用該方法,否則拋出CloneNotSupportedException異常。

    默認(rèn)的clone方法是淺拷貝。所謂淺拷貝,指的是對(duì)象內(nèi)屬性引用的對(duì)象只會(huì)拷貝引用地址,而不會(huì)將引用的對(duì)象重新分配內(nèi)存。深拷貝則是會(huì)連引用的對(duì)象也重新創(chuàng)建。

    5.toString方法

    返回一個(gè)String對(duì)象,一般子類都有覆蓋。默認(rèn)返回格式如下:對(duì)象的class名稱+@+hashCode的十六進(jìn)制字符串。

    6.notify方法

    final方法,主要用于喚醒在該對(duì)象上等待的某個(gè)線程。

    7.notifyAll方法

    final方法,主要用于喚醒在該對(duì)象上等待的所有線程。

    8.wait(longtimeout)方法

    wait方法就是使當(dāng)前線程等待該對(duì)象的鎖,當(dāng)前線程必須是該對(duì)象的擁有者,也就是具有該對(duì)象的鎖。wait()方法一直等待,直到獲得鎖或者被中斷。wait(longtimeout)設(shè)定一個(gè)超時(shí)間隔,如果在規(guī)定時(shí)間內(nèi)沒有獲得鎖就返回。

 以上就是長(zhǎng)沙一度軟件培訓(xùn)java培訓(xùn)機(jī)構(gòu)的小編針對(duì)“基礎(chǔ)入門Java中object類的方法”的內(nèi)容進(jìn)行的回答,希望對(duì)大家有所幫助,如有疑問,請(qǐng)?jiān)诰€咨詢,有專業(yè)老師隨時(shí)為你服務(wù)。

培訓(xùn)啦提醒您:交易時(shí)請(qǐng)核實(shí)對(duì)方資質(zhì),對(duì)于過大宣傳或承諾需謹(jǐn)慎!任何要求預(yù)付定金、匯款等方式均存在風(fēng)險(xiǎn),謹(jǐn)防上當(dāng)。