关于object的11个方法函数

object是java中所有类的默认父类,里面有11个默认方法。意即所有的类都会默认继承11个方法。
1.public final Class<?ectends Object> getClass()返回一个运行时的类

2.public int hashCode()返回对象的哈希码;

3.public Boolean equals(Object o)比较对象是否相等;

4.protect Object clone()返回对象的副本;要声明实现Clonable,要有异常处理,只能在其子类或类内用;当克隆一份对象时,其对象属性只是克隆了一份指向另一个对象的地址值;

5.public String toString()返回对象的字符串表示;打印一个对象默认调用其默认toString()方法;

6.public final void notify()唤醒在此对象监视器上等待的单个线程;

7.public final void notifyAll()唤醒在此对象监视器上的所有线程;

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

9.public final void wait(long timeout)导致当前线程等待,直到其他线程调用此对象的notify()或notifyAll()方法或时间超时;

10.public final void wait(long timeout, int nanos)或其他线程中断当前线程,或超过实际时间:1000000*timeout+nanos;

11.public final void wait()导致当前线程等待,直到其他线程调用此对象的notify()或notifyAll()方法;

在这里11个方法中最常用的方法是hashCode()和
equals()方法。hashCode()方法就像是给一堆人不同的房间编码,然后equals()方法就是给每个人唯一的一个身份
标识。这两个方法是用来方便给对象分配内存进行管理的,就像是管理一批货品,先给他们分配一些不同的仓库进行分别的存储,然后找到他们时就可以先按他们的仓库编号找到存储他们的仓库,寻找效率便能大大提高。由于仓库号可以相同,而身份标识唯一,所以当equals()相同,hashCode()
必然相同。
这里还要注意一下clone()只是浅复制,即若属性是个对象类型则只得到一个地址值,若要深度复制则只能自己另行复制。

要问我代码为什么写得这么屌?戳下面的链接你就知道,想成为码王一样的男人吗?我的代码都放在那了,想要吗?还等什么?赶快去拿吧!!

http://qingke.me/

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,874评论 18 399
  • (一)Java部分 1、列举出JAVA中6个比较常用的包【天威诚信面试题】 【参考答案】 java.lang;ja...
    独云阅读 7,159评论 0 62
  • 集合框架: 1)特点:存储对象;长度可变;存储对象的类型可不同2)Collection(1)List:有序的;元素...
    Demo_Yang阅读 1,320评论 0 4
  • object是java中所有类的默认父类,里面有11个默认方法。意即所有的类都会默认继承11个方法。1.publi...
    繁花流水congcong阅读 253评论 0 2
  • 独自站在黑夜中,耳听烟花爆竹的声响,眼看瞬间即逝的光火,感到莫名落寞。转身走进室内,看着一群人的狂欢,让围观大人小...
    大Amo阅读 20,345评论 7 4