Object类中的常用方法

Object类作为java中所有类的父类,具有clone、equals、finalize、getClass、hashCode、toString以及一些线程的方法(notify、notifyAll、wait,此处先不谈线程方法)

上面几种方法除finalize()是无返回值的,其余都是有其相应的返回值类型方法

Object类中的equals方法比较的是两个对象在内存中的地址值,其返回值类型为boolean类型,一般定义为public boolean equals(Object obj){ };  不过在其子类调用equals方法时,一般都会根据自己的需求来判断两个对象是否会相等,所以Object中的equals方法在子类中都会被重写

hash Code方法则是返回一个对象的哈希码值,平时与equals方法在调用对象中成对出现,所以在重写equals方法时,很有必要将hashCode方法一起重写,而且,如果两个对象equals比较相等,那么这两个对象的hashCode必定相等,但是如果这两个对象的hashCode相等,equals则不一定相等。

toString方法是将一个对象以字符串的形式表现出来。返回的结果应该是信息简洁并且容易阅读。建议所有子类重写toString方法。

getClass方法返回此Object的运行时类。即返回在JVM所运行时调用的class文件对象(在java中class文件也是对象),而根据class文件所创建的对象,由于是通过同一份class文件(class文件在java中只有一份)创建出来的,所以,两个对象getClass后,再通过equals方法比较,结果是相等的,因为两个对象getClass指向相同的class文件。

转载于:https://my.oschina.net/u/3556396/blog/1204678

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值