总共有11种方法
1、getClass()
返回此 Object 的运行时 的类(class对象)。返回的 Class 对象是由所表示类的 static synchronized 方法锁定的对象。
2、hashCode()
返回该对象的哈希码值。支持此方法是为了提高哈希表(例如 java.util.Hashtable 提供的哈希表)的性能。
3、equals()
比较两个对象是否相等。Object类的默认实现,即比较2个对象的内存地址是否相等。
4、clone()
创建并返回此对象的一个副本。
对于任何对象 x,表达式: x.clone() != x为 true,
表达式: x.clone().getClass() == x.getClass()也为 true,
表达式:x.clone().equals(x)为 true,但这并非必须要满足的要求。
5、toString()
返回该对象的字符串表示。通常,toString 方法会返回一个“以文本方式表示”此对象的字符串。
6、notify()
唤醒在此对象监视器上等待的单个线程。如果所有线程都在此对象上等待,则会选择唤醒其中一个线程。选择是任意性的,并在对实现做出决定时发生。
7、notifyAll()
唤醒在此对象监视器上等待的所有线程。线程通过调用其中一个 wait 方法,在对象的监视器上等待。
8、wait(long timeout)
在其他线程调用此对象的 notify() 方法或 notifyAll() 方法,或者超过指定的时间量前,导致当前线程等待。
当前线程必须拥有此对象监视器。
9、wait(long timeout , int nanos)
跟wait(long timeout)方法类似,多了一个nanos参数,这个参数表示额外时间(以毫微秒为单位,范围是 0-999999)。 所以超时的时间还需要加上nanos毫秒。
10、wait()
跟之前的2个wait方法一样,只不过该方法一直等待,没有超时时间这个概念。
11、finilize()
当垃圾回收器确定不存在对该对象的更多引用时,由对象的垃圾回收器调用此方法。子类重写 finalize 方法,以配置系统资源或执行其他清除。