首先类implements Cloneable接口
然后
public 返回同类 clone(){
return (同类)super.clone();
}
实例一个对象a
对象b=a.clone();
对象b会复制a对象里的基本类型属性,而引用类型属性只是复制一个引用而已,不会复制引用指向的对象。所以属于浅克隆
再简单的说:一个对象里的属性特征,有的是存在堆里,有的存栈里,只能可能栈,不能克隆堆,但是栈里的变量可以指向堆。
Object类里的clone方法就是实现这个接口的。
equals比较是否同地址,基本上没多大用,很多情况下需要重写
finalize通知垃圾回收机制清理资源,不一定会启动,不推荐手动。
getClass获得运行时的类
hashCode,一个对象的哈希码
notify随机唤醒一个等待中的线程
notifyAll唤醒所有等待中的线程,但不是同时执行,而是让他们互相竞争,谁优先级好谁先上
toString 对象转换成字符串形式,经常被重写
wait(),线程暂停,可以输入等待时间作为参数。
Objects 是object的工具类
Arrays是array的工具类
Collections是collection的工具类