Object有哪些方法

protected Object clone() 创建并返回此对象的一个副本
Object对象有个clone()方法,实现了对象中各个属性的复制,但它的可见范围是protected的,所以实体类使用克隆的前提是:
① 实现Cloneable接口,这是一个标记接口,自身没有方法。
② 覆盖clone()方法,可见性提升为public。
浅拷贝和深拷贝
浅拷贝:被复制对象的所有值属性都含有与原来对象的相同,而所有的对象引用属性仍然指向原来的对象。
深拷贝:在浅拷贝的基础上,所有引用其他对象的变量也进行了clone,并指向被复制过的新对象。
如果一个被复制的属性都是基本类型,那么只需要实现当前类的cloneable机制就可以了,此为浅拷贝。
如果被复制对象的属性包含其他实体类对象引用,那么这些实体类对象都需要实现cloneable接口并覆盖clone()方法。
这样还不够,Person的clone()需要显式地clone其引用成员。

boolean equals(Object obj) 指定其他某个对象是否与此对象相等

propercet void finalize() 当垃圾回收器确定不存在对该对象的更多引用时,由对象的垃圾回收器调用此方法。

Class<> getClass() 返回此Object的运行时类

int hashCode() 返回此对象的哈希码值
void notify() 唤醒在此对象监视器上等待的单个线程
void notifyAll() 唤醒在此对象监视上等待的所有线程
String toString() 返回该对象的字符串表示
void wait() 调用该方法使当前线程等待
void wait(long timeout) 调用该方法使当前线程超过指定时间前等待
void wait(long timeout,int nanos) 调用该方法使当前线程超过指定时间前等待,主要点在于知道 timeout的单位为毫秒, 参数nanos 的单位为纳秒,

wait(long timeout, int nanos)方法提供比wait(long timeout)更好的时间控制

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值