版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/ght886/article/details/81253997
Java语言不同于C++语言,是一种单根继承结构语言。如果一个类没有用extends明确指出继承于某个类,那么它默认继承Object类。
Object类的12个方法:
按照用途可以分为以下几种
1,构造函数
2,hashCode和equale函数用来判断对象是否相同,
3,wait(),wait(long),wait(long,int),notify(),notifyAll()
4,toString()和getClass,
5,clone()
6,finalize()用于在垃圾回收
函数说明
clone()
clone()函数的用途是用来另存一个当前存在的对象。实现对象的浅复制,只有实现了Cloneable接口才可以调用该方法,否则抛出CloneNotSupportedException异常。
hashCode()和equale()
equale()用于确认两个对象是否相同。equale()返回true的两个对象一定相同。一般equals和==是不一样的,但是在Object中两者是一样的。子类一般都要重写这个方法。
hashCode()用于获取对象的哈希值,这个值的作用是检索.哈希值相同的对象不一定equale()
toString()和getClass()
toString()返回一个String对象,用来标识自己
getClass()返回一个Class对象
wait(),wait(long),wait(long,int),notify(),notifyAll()
- 这几个函数体现的是Java的多线程机制
- 在使用的时候要求在synchronize语句中使用
- wait()用于让当前线程失去操作权限,当前线程进入等待序列
- notify()用于随机通知一个持有对象的锁的线程获取操作权限
- notifyAll()用于通知所有持有对象的锁的线程获取操作权限
- wait(long) 和wait(long,int)用于设定下一次获取锁的距离当前释放锁的时间间隔
finalize()
这个函数在进行垃圾回收的时候会用到,匿名对象回收之前会调用到。