object類別方法有:1、實作物件的淺複製的clone方法;2、取得執行時間類型的getclass方法;3、釋放資源的finalize方法;4、用於哈希查找的hashCode方法;5、使目前執行緒等待該物件的鎖wait方法。
【推薦課程:#Java教學】
##Object類別方法
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類別有哪些方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!