欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

1、java.lang.Object类 博客分类: 五、常用类 ObjectequalshashCodetoString 

程序员文章站 2024-03-24 16:45:28
...

一、Object

 

  1. 是所有对象的直接或者间接父类,该类中定义的肯定是所有对象都具备的功能
  2. 是类层次结构的根类。每个类都使用 Object 作为超类。所有对象(包括数组)都实现这个类的方法。

二、Object类详解

 

public class Object 
{
	//1、构造方法是默认的,javadoc时会生成构造函数Object(){}

	//2、指示其他某个对象是否与此对象“相等”。
	public boolean equals(Object obj) 
	{
		return (this == obj);
    }

	//3、返回此 Object 的运行时类。
	public final native Class<?> getClass();

	//4、返回该对象的哈希码值。
	public native int hashCode();

	//5、唤醒在此对象监视器上等待的单个线程。
	public final native void notify();

	//6、唤醒在此对象监视器上等待的所有线程。
	public final native void notifyAll();

	//7、返回该对象的字符串表示。
	public String toString() 
	{
		return getClass().getName() + "@" + Integer.toHexString(hashCode());
    }

	//8、在其他线程调用此对象的 notify() 方法或 notifyAll() 方法前,导致当前线程等待。
	public final void wait() throws InterruptedException 
	{
		wait(0);
    }

	//9、在其他线程调用此对象的 notify() 方法或 notifyAll() 方法,或者超过指定的时间量前,导致当前线程等待。
	public final native void wait(long timeout) throws InterruptedException;

	//10、创建并返回此对象的一个副本,对象x x.clone() != x 并且 x.clone().getClass() == x.getClass()
	protected native Object clone() throws CloneNotSupportedException;
}

 

 

 

通常equals,toString,hashCode,在应用中都会被复写,建立具体对象的特有的内容