zoukankan      html  css  js  c++  java
  • Object类的方法

    Java语言不同于C++语言,是一种单根继承结构语言,也就是说,Java中所有的类都有一个共同的祖先。这个祖先就是Object类。

    object类的结构


    如图可知,Object类有12个成员方法,按照用途可以分为以下几种
    1,构造函数
    2,hashCode和equals函数用来判断对象是否相同,
    3,wait(),wait(long),wait(long,int),notify(),notifyAll()
    4,toString()和getClass(),
    5,clone()
    6,finalize()用于在垃圾回收

    函数说明

    clone()

    clone()函数的用途是用来另存一个当前存在的对象。

    hashCode()和equals()

    equale()用于确认两个对象是否相同。
    hashCode()用于获取对象的哈希值,这个值的作用是检索,具体的作用可以参考这里
    哈希值相同的对象不一定equals()
    equals()返回true的两个对象一定相同。
    toString()和getClass()
    toString()返回一个String对象,用来标识自己 
    getClass()返回一个Class对象,如果打印出来会发现结果是如下格式

    class package.name.xxx 

    因为返回的是一个class对象,后面可以跟class类的方法。用的是谁的构造函数,那么getClass返回的就是谁的类型。 
    getClass()经常用于java反射机制

    wait(),wait(long),wait(long,int),notify(),notifyAll()

    这几个函数体现的是Java的多线程机制
    在使用的时候要求在synchronize语句中使用
    wait()用于让当前线程失去操作权限,当前线程进入等待序列
    notify()用于随机通知一个持有对象的锁的线程获取操作权限
    notifyAll()用于通知所有持有对象的锁的线程获取操作权限
    wait(long) 和wait(long,int)用于设定下一次获取锁的距离当前释放锁的时间间隔

    finalize()

    这个函数在进行垃圾回收的时候会用到,匿名对象回收之前会调用到,具体的例子如图所示






  • 相关阅读:
    ★一名“标题党”自我修炼的10大技巧
    字符编码笔记:ASCII,Unicode和UTF-8
    字符编码笔记:ASCII,Unicode和UTF-8
    字符编码笔记:ASCII,Unicode和UTF-8
    ★漫画:优秀的程序员具备哪些属性?
    ★漫画:优秀的程序员具备哪些属性?
    Linux 标准目录结构
    hadoop多次格式化后,导致datanode启动不了
    Linux天天见
    我的ipad应用备份
  • 原文地址:https://www.cnblogs.com/lukelook/p/10888449.html
Copyright © 2011-2022 走看看