Object类

类层次结构的根类,所有的类都直接或者间接继承自该类

Object类

 

hashCode方法

  • public int hashCode()
  • 返回该对象的哈希码值,默认情况下,该方法会根据对象的地址来计算
  • 不同对象的哈希码值一般来说不会相同,但是,同一个对象的哈希码值肯定相同

Object类

Object类

 

getClass方法

  • public final Class getClass()
  • 返回此对象的运行时类
  • 可通过Class类中的getName()方法,获取对象的真实类的全名称:public String getName()

Object类

 

toString方法

  • public String toString()
  • 返回该对象的字符串表示
  • 它的值等于:对象.getClass().getName+"@"+Integer.toHexString(对象.hashCode())
  • 由于默认情况下的数据没有意义,一般建议重写该方法
  • 如果一个打印对象的引用时,输出不是:对象全限定名@十六进制哈希码值,则这个类一定重写了toString方法

Object类

Object类

 

equals方法

Object类

  • 指示其他对象是否与此对象“相等”
  • 默认情况下比较的是对象的引用是否相同
  • 由于比较对象的引用没有意义,一般建议重写该方法
  • Object中的equals方法比较的是对象的地址值,没有什么意义,一般需要重写,因为在开发中通常比较的是对象的属性值,认为相同属性的是同一个对象