signed

QiShunwang

“诚信为本、客户至上”

object的了解

2021/6/3 16:32:45   来源:

Object类是所有类的父类
其中主要有以下几个方法:

public final native Class<?> getClass();
//这个方法用来获得生成当前对象的类对象
public native int hashCode();
//计算当前类的hash值,一般重写equals都会重写hashCode方法
public boolean equals(Object obj) {
        return (this == obj);
    }
// 判断两个对象是否相等
protected native Object clone() throws CloneNotSupportedException;
//clone是生成一个与当前对象相等的对象,但是地址是不同的
/* 
	x.clone() != x
	x.clone().getClass() == x.getClass()
	x.clone().equals(x)
*/
public String toString() {
        return getClass().getName() + "@" + Integer.toHexString(hashCode());
    }
//返回对象地址值
public final native void notify();
//唤醒此监视器对象上等待的单个线程
public final native void notifyAll();
//唤醒此监视器上等待的所有线程
public final native void wait(long timeout) throws InterruptedException;
//在其他线程使用notify()或notifyAll()之前,当前线程等待