首页 > 代码库 > JavaSE 学习笔记之Object对象(八)

JavaSE 学习笔记之Object对象(八)

Object所有类的直接或者间接父类,Java认为所有的对象都具备一些基本的共性内容,这些内容可以不断的向上抽取,最终就抽取到了一个最顶层的类中的,该类中定义的就是所有对象都具备的功能。

 

具体方法:

1boolean equals(Object obj):用于比较两个对象是否相等,其实内部比较的就是两个对象地址。

而根据对象的属性不同,判断对象是否相同的具体内容也不一样。所以在定义类时,一般都会复写equals方法,建立本类特有的判断对象是否相同的依据。

  public boolean equals(Object obj){

      if(!(obj instanceof Person))

          return false;

      Person p = (Person)obj;

      return this.age == p.age;

  }

2String toString():将对象变成字符串;默认返回的格式:类名@哈希值 = getClass().getName() + ‘@‘ + Integer.toHexString(hashCode())

  为了对象对应的字符串内容有意义,可以通过复写,建立该类对象自己特有的字符串表现形式。

  public String toString(){

      return "person : "+age;

  }

3Class getClass():获取任意对象运行时的所属字节码文件对象。

4int hashCode():返回该对象的哈希码值。支持此方法是为了提高哈希表的性能。

 

通常equals,toString,hashCode,在应用中都会被复写,建立具体对象的特有的内容。

JavaSE 学习笔记之Object对象(八)