Java中的hashCode()方法

1、在Object中的 hashCode() 方法是怎样的?

    public native int hashCode();

    这个方法不是抽象方法,带有native关键字,底层调用c++程序。

2、hashCode()方法返回的是哈希码,实际上是一个Java对象的内存地址,经过哈希算法,得出的一个值,所有hashCode()方法的执行结果可以等同于一个Java对象的内存地址。

 以下代码加深理解

import java.util.Objects;

public class Test4 {
    public static void main(String[] args) {
        Object o = new Object();
        int hashValue1 = o.hashCode();
        System.out.println(hashValue1);

        Class1 c = new Class1();
        int hashValue2 = c.hashCode();
        System.out.println(hashValue2);
    }
}

class Class1{

}

输出结果为:

      Java中的hashCode()方法 

 

上一篇:C#默认构造函数


下一篇:java 反射