Object是所有類的父類,任何類都默認繼承Object。
public class Demo { public static void main(String[] args) { Object object = new Integer(1); Object object2 = new Integer(1); //final方法,獲得運行時類型 Object classType = object.getClass(); //該方法用於哈希查找,重寫了equals方法一般都要重寫hashCode方法。 //這個方法在一些具有哈希功能的Collection中用到 int hashCode = object.hashCode(); //在Object中與==是一樣的,子類一般需要重寫該方法 System.out.println(object.equals(object2)); //喚醒在該對象上等待的某個線程 object.notify(); //喚醒在該對象上等待的所有線程 object.notifyAll(); //保護方法,實現對象的淺復制,只有實現了Cloneable接口才可以調用該方法,否則拋出CloneNotSupportedException異常 try { /* * 使當前線程等待該對象的鎖,當前線程必須是該對象的擁有者,也就是具有該對象的鎖。wait()方法一直等待,直到獲得鎖或者被中斷。 * wait(long timeout)設定一個超時間隔,如果在規定時間內沒有獲得鎖就返回。 調用該方法后當前線程進入睡眠狀態,直到以下事件發生: 1. 其他線程調用了該對象的notify方法 2. 其他線程調用了該對象的notifyAll方法 3. 其他線程調用了interrupt中斷該線程 4. 時間間隔到了 此時該線程就可以被調度了,如果是被中斷的話就拋出一個InterruptedException異常 */ object.wait(); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }