重写equal一定要重写hashcode,重写equals必须重写hashcode
写爬虫互联网协议(互联网协议)被封了怎么解决?立即使用
equals 方法重写的规则
判断一定相等(引用一致)
判断一定不等(类型不一致)
判断可能相等(需要把当前的对象给强转之后进行比较)
hashCode 重写规则
根据当前对象的唯一标识进行重写
如果为空就直接返回0,不为空就返回唯一标识的散列码即可。
toString 重写规则,字符串加上 区别非字符串
类名{字段1=值1,字段2=值2}
例如:Person{id=123,name=tom}
例如:
包com。达达。四郎。实体;
导入Java。io。可序列化;
公共类组织实现可序列化{
私有长id;//编号
私有字符串名称;//组织机构名称
私有长parentId//父编号
私有字符串parentIds//父编号列表
私有布尔可用=布尔。假的;
公共Long getId() {
返回id;
}
公共空的集合id(长id) {
this.id=id
}
公共字符串getName() {
返回名称;
}
公共void集合名称(字符串名){
this.name=name
}
public Long getParentId() {
返回父编号
}
public void setParentId(Long parentId){
this.parentId=parentId
}
公共字符串getParentIds() {
返回parentIds
}
public void setParentIds(String parentIds){
this.parentIds=parentIds
}
公共布尔getAvailable() {
退货可用;
}
可用的公共空集(布尔可用){
this.available=可用;
}
public boolean isRootNode() {
return parentId==0;
}
公共字符串makeSelfAsParentIds() {
返回get parentids()getId()/;
}
@覆盖
公共布尔值等于(反对){
//1.判断一定相等
如果(这==那)返回真实的
//2.判断一定不等
if(that==null getClass()!=that.getClass())返回错误的
//3.判断可能相等的情况
obj=(Organization)that;
if(id==null?thatObj.id!=null:id.equals(thatObj.id))返回错误的
返回真实的
}
@覆盖
public int hashCode() {
return id==null?0:id。hashcode();
}
@覆盖
公共字符串toString() {
返回"组织{"
id= id
,name= name
,parentId= parentId
,parentIds= parentIds
,可用=可用
};
}
}以上就是equals、hashCode、toString方法重写的详细内容,更多请关注我们其它相关文章!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。