标签:getClass 对象 是否 Object hashCode 源码 public
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
- 判断两个引用指向的实际对象类型是否一致
- 强制类型转换
- 依次比较各个属性值是否相同
这样就变成了判断两个引用的属性是否一致
标签:getClass,对象,是否,Object,hashCode,源码,public 来源: https://www.cnblogs.com/xingyboy/p/15314290.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。