Java根類 Object
阿新 • • 發佈:2018-11-21
Object介紹
- 它是所有類的超類,其他類都直接或間接繼承Object 是其他類的根類
Object類的hashCode()方法
- public int hashCode()
- 返回該物件的雜湊碼值(int型的)。預設情況下,該方法會根據物件的地址來計算。
- 不同物件的,hashCode()一般來說不會相同。但是,同一個物件的hashCode()值肯定相同。
getClass()方法
- public final Class getClass()
- 返回此 Object 的執行時類。(也可稱為拿到了class的位元組碼檔案)
- 可以通過Class類中的一個方法,獲取物件的真實類的全名稱。
class test{
public static void main(String[] args){
Random rand = new Random();
Class cl = rand.getCalss();
String name = cl.getName();
System.out.println(name);
}
}
結果為:java.util.Random
toString()方法
- public String toString()
- a:返回該物件的字串表示。
public Stirng toString() {
return name + "," + age;
}
- 它的值等於:
- getClass().getName() + “@” + Integer.toHexString(hashCode())
- 由於預設情況下的資料對我們來說沒有意義,一般建議重寫該方法
equals()方法
- 指示其他某個物件是否與此物件“相等”。
- 預設情況下比較的是物件的引用是否相同。
- 由於比較物件的引用沒有意義,一般建議重寫該方法。
- ==是一個比較運算子號,既可以比較基本資料型別,也可以比較引用資料型別,基本資料型別比較的是值,引用資料型別比較的是地址值
- equals方法是一個方法,只能比較引用資料型別,所有的物件都會繼承Object類中的方法,如果沒有重寫Object類中的equals方法,equals方法和==號比較引用資料型別無區別,重寫後的equals方法比較的是物件中的屬性