Java重写equals
2016-03-27 16:50
351 查看
“==” 实质比较的是二进制位
(1)基本类型
二进制位 是数值 数值相等 true
(2)引用各类型
引用的是同一个对象 返回的是true
引用的不是同一个对象 返回的是 false
equals
(1)String类的equals是重写了Object类的equals 比较的是 字面值
(2) Object 的 equals 方法 相当于 ==
相当于 == 比较 引用类型的情况
3.重写equals的两种判断类型的方法
(1)用instanceof 来判断类型相同
(2)用反射来判断类型相同
示例代码:
注意:用instanceof 判断时obj的类型子类的类型时也返回true,所以不推荐使用
(1)基本类型
二进制位 是数值 数值相等 true
(2)引用各类型
引用的是同一个对象 返回的是true
引用的不是同一个对象 返回的是 false
equals
(1)String类的equals是重写了Object类的equals 比较的是 字面值
(2) Object 的 equals 方法 相当于 ==
相当于 == 比较 引用类型的情况
3.重写equals的两种判断类型的方法
(1)用instanceof 来判断类型相同
(2)用反射来判断类型相同
示例代码:
public boolean equals(Object obj) { if(obj instanceof 类名){ } }
注意:用instanceof 判断时obj的类型子类的类型时也返回true,所以不推荐使用
public boolean equals(Object obj) { if(obj.getClass()==this.class){ } }
相关文章推荐
- java中this关键字和static关键字和super关键字的用法
- Java语言中几个常用的包
- JVMGC——基本垃圾回收算法
- JDK8内存模型—消失的PermGen
- 交换两个变量值的三种方法(Java实现)
- Java基础之Map总篇
- java事务学习笔记(八)--分布式事务入门例子(Spring+JTA+Atomikos+Hibernate+JMS)
- springMVC三种异常处理方式
- Myeclipse9.1 破解失败解决方法
- Java学习笔记-Struts2工作机制
- svn1.8 server client eclipse 插件 配置 完全教程
- 图形程序设计(Java核心技术卷Ⅰ)
- eclipse添加JSF XHTML模板
- Servlet笔记--利用反射实现多个请求使用同一个Servlet
- Spring容器中bean的生命周期以及关注spring bean对象的后置处理器:BeanPostProcessor(一个接口)
- JMM——运行时数据区
- Java的接口
- struts2中的constant配置详解
- 浅析Java中的final关键字
- 20145317彭垚 《Java程序设计》第4周学习总结