(4)Object对象的几个常用方法

Object对象是java中对象的始祖,其有一些方法是经常需要我们来改写的:

toString方法

该方法是Object的方法,Object的这的方法返回的是对象的文件结构加上对象的hashcode,但是有些类对这个方法进行的改写返回的是对应的string的描述

比如,String类就是这样的,改写了从Object继承来的这个方法

一般情况下,我们都需要自己改写这个方法,public String toString(),获得有关对象的详细描述。

equals方法的改写

  “==”比较的是对象的属性值Object.equals()方法一般比较的是不是同一个对象,也就是比较两个对象的引用值是不是相等。这与我们的常理不服,我们更多的是比较两个对象的属性只是不是相同,这是需要们改写一下equals的方法,String本身已经改写

 1 public boolean equals(Object obj)
 2     {
 3         Person p = null;
 4         if(obj instanceof Percon)
 5             p = (Person) obj;
 6         if(this.name.equals(p.name))
 7         {
 8             return ture;//这个意思说只要名字相同就是同一个人,包括双胞胎
 9         }
10         return false11     }

hashCode方法

  采用底层操作系统的hash算法返回对象的hash值,java认为如果equals的值为true,那么hashCode必须相同,如果改写的quals方法,也要改写hashCode

常见的改写方法可以参见javacore

原文地址:https://www.cnblogs.com/OliverZhang/p/6013747.html