1.equals:实现是比较两个对象的地址来确定对象是否相等,可重写,非常重要,在java中通过equals比较两个对象上是否相同(相等)。
2.(唯一用处就是在使用hashmap,set等容器时提高比较效率)hashcode()是一个对象的地址值产生的一串数字,未重写前可以唯一的标识一个对象,为什么要有这个方法的原因主要是使用hashmap、set时保证这两个容器内数据不重复。
hashmap:使用hashcode()返回的散列值通过散列函数计算映射到map中的某个位置,如果该位置有元素,则调用equals()方法比较是否相同,不相同则解决hash冲突,相同则舍弃。
set:同样道理,set不允许重复元素,利用hashcode解决。
hashcode可以重写。
对象的equals()方法返回true时,两个对象hashcode必须相同(因为存到set会有重复数据)。
hashcode相同对象不一定相同。
3.registerNative() 作用是将本地方法向虚拟机注册,这样当程序调用本地方法后,jvm才可以找到这些方法。
4.getclass()返回当前类的类对象,用于反射。
5.clone()拷贝一个对象的副本,是protect的,给子类重写,浅拷贝。
6.tostring()返回对象的字符串标识形式,方便打印,了解对象信息的。
7.wait(),wait(long) waitr(long,int)用于线程间通信,阻塞当前线程
8.notify/notifyall 唤醒wait的线程。
9.finalize()对象被回收前会调用这个方法,看能否起死回生。