Java中Object类中的方法

java中提供的类以及我们自定义的类都直接或者间接的继承自Object类。

Java的Object类是所有类的顶级父类,所有方法如下所示:


1. hashCode(),返回一个hash值,两个对象的hash值不同,那么两个对象equals肯定为false。hash相同,equals不一定为true。

   获取对象的哈希值。其实就是对象的内存地址值十进制表示


2. equals()

      用于比较两个对象的地址值是否相同。
      我们获取对象后,比较它的地址值意义不大。所以也会对这个方法进行重写。
      重写要完成什么功能,是根据需求定的。


3. clone() 只有实现Cloneable接口的对象才可以调用这个方法。clone()是浅复制。如果对象里面又关联其他对象那么需要重写clone()方法才能深复制。深复制是针对引用类型而言的,基本数据类型不用考虑。序列化也可以实现深复制。


4. toString()方法

      返回对象的字符串表示。
      表示格式:getClass().getName()+"@"+Integer.toHexString(hashCode());


5. notify() 唤醒在该对象上等待的某个线程


6. wait()


7. notifyAll()


8. getClass()

     获取对象的字节码文件的描述类,String name = s.getClass().getName();


9. finalize()

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


10. registerNative()注册本地方法

 

 

==和equals的用法:
        A:==怎么用?
            **可以用于比较基本数据类型,比较的就是基本数据类型的值是否相等。
            **可以用于比较引用数据类型,比较的是对象的地址值是否相等。
        B:equals怎么用?
            equals只能用于比较引用数据类型的。
            **Object提供的equals是用于比较对象地址值是否相同。
            **自定义类中,如果重写了equals方法,那么就是按照你自己的需求来比较的

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值