Object類中都有哪些方法?

2021-08-29 23:30:29 字數 1062 閱讀 8549

object是所有類的父類,任何類都預設繼承object。object類都實現了哪些方法呢?

1.clone方法

保護方法,實現物件的淺複製,只有實現了cloneable介面才可以呼叫該方法,否則丟擲clonenotsupportedexception異常。

2.getclass方法

final方法,獲得執行時型別。

3.tostring方法

該方法用得比較多,一般子類都有覆蓋。

4.finalize方法

該方法用於釋放資源。因為無法確定該方法什麼時候被呼叫,很少使用。

5.equals方法

該方法是非常重要的乙個方法。一般equals和==是不一樣的,但是在object中兩者是一樣的。子類一般都要重寫這個方法。

6.hashcode方法

該方法用於雜湊查詢,重寫了equals方法一般都要重寫hashcode方法。這個方法在一些具有雜湊功能的collection中用到。

一般必須滿足obj1.equals(obj2)==true。可以推出obj1.hash- code()==obj2.hashcode(),但是hashcode相等不一定就滿足equals。不過為了提高效率,應該盡量使上面兩個條件接近等價。

7.wait方法

wait方法就是使當前執行緒等待該物件的鎖,當前執行緒必須是該物件的擁有者,也就是具有該物件的鎖。wait()方法一直等待,直到獲得鎖或者被中斷。wait(long timeout)設定乙個超時間隔,如果在規定時間內沒有獲得鎖就返回。

呼叫該方法後當前執行緒進入睡眠狀態,直到以下事件發生。

(1)其他執行緒呼叫了該物件的notify方法。

(2)其他執行緒呼叫了該物件的notifyall方法。

(3)其他執行緒呼叫了interrupt中斷該執行緒。

(4)時間間隔到了。

此時該執行緒就可以被排程了,如果是被中斷的話就丟擲乙個interruptedexception異常。

8.notify方法

該方法喚醒在該物件上等待的某個執行緒。

9.notifyall方法

該方法喚醒在該物件上等待的所有執行緒。

Object類有哪些方法

object是所有類的父類,任何類都預設繼承object。object類到底實現了哪些方法?1 clone方法 保護方法,實現物件的淺複製,只有實現了cloneable介面才可以呼叫該方法,否則丟擲clonenotsupportedexception異常。2 getclass方法 final方法,獲...

Object類中有哪些方法

object是所有類的父類,任何類都預設繼承object。object類到底實現了哪些方法?1 clone方法 保護方法,實現物件的淺複製,只有實現了cloneable介面才可以呼叫該方法,否則丟擲clonenotsupportedexception異常。2 getclass方法 final方法,獲...

Object 類有哪些方法?

equals 檢測物件是否相等,預設使用 比較物件引用,可以重寫 equals 方法自定義比較規則。equals 方法規範 自反性 對稱性 傳遞性 一致性 對於任何非空引用 x,x.equals null 返回 false。hashcode 雜湊碼是由物件匯出的乙個整型值,沒有規律,每個物件都有預設...