Object类

1.getClass类

  • 源码:Public final Class<?> getClass(){}
  • 返回引用中储存的实际对象类型
  •  应用:通常用于判断两个引用中实际存储对象类型是否一致

 

代码:

 

2.hashCode()方法

  • 源码:public int hashCode(){}
  • 返回该对象的哈希码值。
  • 哈希值根据对象的地址字符串数字使用hash算法计算出来的Int类型的数值 
  • 一般情况下相同对象返回相同哈希吗

 

代码

 

 3.toString()方法

  • 源码:

    public String toString() {

    return getClass().getName() + "@" + Integer.toHexString(hashCode());
    }根据源码,我们有时不需要他返回这些数据,这时候就有重写toString再调用

  • 返回该对象的字符串表示
  • 可以根据程序需求重写该方法

代码

 

 

 4.equals()方法

  • 源码:public boolean equals(Object obj){}
  • 默认实现为(this==obj),比较两个对象地址是否相同。
  • 可进行覆盖,比较两个对象的内容是否相同

 

equals()方法重写

  • 比较两个引用是否指向同一个对象
  • 判断obj是否为null
  • 判断两个引用指向的实际对象类型是否一致
  • 强制类型转换
  • 依次比较各个属性值是否相同

 这样就变成了判断两个引用的属性是否一致

 

 

 

posted @ 2021-09-20 14:51  星雨boy  阅读(38)  评论(0)    收藏  举报