哈希值
哈希值:是一个十进制的整数,由系统随机给出(就是对象的地址值,是一个逻辑地址,是模拟出来的地址,不是数据实际存储的物理地址)
在Object类中有一个方法,可以获取对象的哈希值
int hashCode() 返回该对象的哈希码值。
hashCode方法的源码:
public native int hashCode();
native:代表该方法调用的是本地操作系统的方法
例如:
public class Person extends Object{
// 重写hashCode方法
@Override
public int hashCode() {
return 1;
}
}
main方法:
// Person类继承了Object类,所以可以使用Object类的hashCode方法
Person p1 = new Person();
int h1 = p1.hashCode();
// System.out.println(h1); // 重写前:2133927002 十进制哈希值
System.out.println(h1); // 重写后:1 十进制哈希值
// System.out.println(p1); // 重写前:包名.类名@7f31245a 十六进制哈希值
System.out.println