java.lang.Obejct类.md

Java最基本的类型,其他类都将Object作为超类,Obect类方法含有一下方法:

类型 方法 说明
protected Object clone() 创建、返回复制对象
boolean equals(Object obj) 对象比较,注意值比较区别
protected void finalize() GC方法,尽量少用
Class getClass() 返回对象使用方法
int hashCode() 返回对象散列数
void notify() 唤醒对象监控等待的单一线程
void notifyAll 唤醒对象监控等待的所有线程
String toString() 返回对象字符串形式
void wait() 线程等待
void wait(long timeout) 线程等待
void wait(long timeout, int nanos) 线程等待

Java.util.Object类

getClass方法

返回此对象的运行类,返回运行时对象static synchronized方法锁定状态下的类。
涉及Java反射。
.getClass()方法与.class区别在于
1. .getClass()是实例方法,类的Class类实例是通过.class获得。
2. 出现的时期不同,.getClass()是运行时动态加载;.class是运行时加载;

hashCode方法

返回对象的散列值,应用在HashMap等需要hash计算的子类。
这里的约定:
1. 同一对象多次使用hashCode,应返回相同的整数值。
2. 如果两个对象在equals()返回值为true,应返回相同的整数值。
3. 若equals()返回值为false,返回值应当不同。然而hashCode()返回的不是所在的物理地址,也不是逻辑地址。hashCode()相同的两个对象,可能对象不同。
因此,重写equals()方法后,应当重写hashCode()方法。

equals方法

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章