1700442162
1700442163
if(obj instanceof Person){
1700442164
1700442165
Person p=(Person)obj;
1700442166
1700442167
if(p.getName()==null||name==null){
1700442168
1700442169
return false;
1700442170
1700442171
}else{
1700442172
1700442173
return name.equalsIgnoreCase(p.getName());
1700442174
1700442175
}
1700442176
1700442177
}
1700442178
1700442179
return false;
1700442180
1700442181
}
1700442182
1700442183
1700442184
1700442185
1700442187
编写高质量代码:改善Java程序的151个建议 建议47:在equals中使用getClass进行类型判断
1700442188
1700442189
本节我们继续讨论覆写equals的问题。这次我们编写一个员工Employee类继承Person类,这很正常,员工也是人嘛,而且在JEE中JavaBean有继承关系也很常见,代码如下:
1700442190
1700442191
class Employee extends Person{
1700442192
1700442193
private int id;
1700442194
1700442195
/*id的getter/setter方法省略*/
1700442196
1700442197
public Employee(String_name, int_id){
1700442198
1700442199
super(_name);
1700442200
1700442201
id=_id;
1700442202
1700442203
}
1700442204
1700442205
@Override
1700442206
1700442207
public boolean equals(Object obj){
1700442208
1700442209
if(obj instanceof Employee){
1700442210
1700442211
Employee e=(Employee)obj;
[
上一页 ]
[ :1.700442162e+09 ]
[
下一页 ]