Java基礎:Object

------java.lang.Object 
       Object:所有類的直接或者間接父類,Java認爲所有的對象都具備一些基本的共性內容,這些內容可以不斷的向上抽取,最終就抽取到了一個最頂層的類中的,該類中定義的就是所有對象都具備的功能。  
      具體方法: 
      1,boolean equals(Object obj)
      用於比較兩個對象是否相等,其實內部比較的就是兩個對象地址。如果根據 equals(Object) 方法,兩個對象是相等的,那麼對這兩個對象中的每個對象調用 hashCode 方法都必須生成相同的整數結果; 而根據對象的屬性不同,判斷對象是否相同的具體內容也不一樣。所以在定義類時,一般都會複寫equals方法,建立本類特有的判斷對象是否相同的依據。    
 public boolean equals(Object obj){   
   if(!(obj instanceof Person))   
    return false; 
    Person p = (Person)obj;   
   return this.age == p.age;  
} 

     2,String toString()
      將對象變成字符串;默認返回的格式:類名@哈希值 = getClass().getName() + '@' + Integer.toHexString(hashCode())  爲了對象對應的字符串內容有意義,可以通過複寫,建立該類對象自己特有的字符串表現形式。   
       public String toString(){ return "person : "+age; } 
    3,Class getClass():
     獲取任意對象運行時的所屬字節碼文件對象。 
   4,int hashCode()
     返回該對象的哈希碼值。支持此方法是爲了提高哈希表的性能。將該對象的內部地址轉換成一個整數來實現的。   
    通常equals,toString,hashCode,在應用中都會被複寫,建立具體對象的特有的內容。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章