问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Java 重写equal 时候,强转提示不可达。为何

发布网友 发布时间:2022-05-19 01:28

我来回答

3个回答

热心网友 时间:2024-03-02 17:36

1,一般重写equals方法不用自己写,自己写的代码不够完美,还有就是每次都手写太烦

2,使用快捷键Alt+Shift+s,

3,选择equals来重写,下面是标准代码:

@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
Student other = (Student) obj;
if (age == null) {
if (other.age != null)
return false;
} else if (!age.equals(other.age))
return false;
if (gender == null) {
if (other.gender != null)
return false;
} else if (!gender.equals(other.gender))
return false;
if (id == null) {
if (other.id != null)
return false;
} else if (!id.equals(other.id))
return false;
if (name == null) {
if (other.name != null)
return false;
} else if (!name.equals(other.name))
return false;
return true;
}

热心网友 时间:2024-03-02 17:36

public class Student {
int id;
String name;
String gender;
int age;

public Student(int id, String name, String gender, int age) {
this.id = id;
this.name = name;
this.gender = gender;
this.age = age;
}

@Override
public boolean equals(Object obj) {
if (obj == null)
return false;
if (obj == this)
return true;
if (!(obj instanceof Student))
return false;

// return super.equals(obj); 这里直接写return
// ,没有if判断句,那么无论如何必须return,就无法执行下面的代码了
Student s = (Student) obj;// 提示不可达
return id == s.id && name.equals(s.name) && gender.equals(s.gender) && age == s.age;

}

}

热心网友 时间:2024-03-02 17:37

return super.equals(obj); // 这句去掉就可以了,在这里就返回了,后面的那些当然不可达,这句等价于 return obj == this;
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
华为freebuds4i切歌怎么操作_华为freebuds4i怎么切歌 华为freebuds pro切歌方法_华为freebuds pro怎么切歌 华为耳机怎么切换下一曲 欧美电影,好像是宠物有一个世界,宠物会想办法跟主人的灵魂互换占据 ...的名字,欧洲中世纪,一个王子的继母把他的灵魂和狗的灵魂互换了... 问一部外国电影的名字 剧情记得不大清楚l了 是前几年的片子 灵魂互换的... HUAWEI 华为 AGS2-W09 10.1英寸平板电脑 (香槟金、64GB+4GB、WiFi版... 诛仙3百法和千法差距大吗 微信怎么解除应用授权登录 授权应用删除方法 微信怎么解除应用授权登录授权应用删除方法 eclipse java 中@Test和@override 都是什么意思?快捷键是什么? eclipse哪个快捷键可以直接呼出要重写的方法 18、9岁的女生应该穿什么样的高跟鞋 未成年穿高跟鞋 以后对脚会不会有害.!?拜托各位了 3Q 忘记密码怎么办华为平板 科目三考试通过路口,被安全员踩刹车,怎么办? 科目三挂了,安全员记录的是什么 科目三考过之后教练说要发200块给安全员,由他先代收? 我的科目三考试完忘记听语音播报了那个安全员问我的身份证号码就叫我到里面去签字了,不知道合不合格 科目三考试教练有后台可以作弊和指挥?说包个红包就能帮过?真的假的,安全员能带手机?教练看我像有钱人 科目三在安全员的帮助和提醒下为什么还会挂科? 怎么设置u盘启动系统? 如何用U盘启动系统? 怎么选择u盘启动系统 科目三安全员踩刹车就挂?那为何安全员还能踩刹车帮过 今天考科目三 成绩合格了下车打印却说我作弊 只是因为安全员跟我说话 windows8系统怎么设置定时关机 外聘院士是什么意思 学校的外聘院士是什么意思呢? 增选中科院院士增选是啥意思,增加选择么 eclipse哪个快捷键可以直接呼出要重写的方法? java怎么实现记事本的快捷键功能 Eclipse 中什么快捷键可以快速显示出,当前重写/实现的方法是在哪个类/接口中定义的? eclipse怎么快速重写方法 请问,java里toObject方法怎么使用? 关于感思的句子摘抄 衣服发霉,有好多小霉点,怎么弄掉呀? 合同主体变更员工工龄如何计算 公司变更法人工人工龄怎么办 企业名称不变,但法人代表更换,职工以前的工龄还算吗?谢谢! 公司变更名称和法人代表后,员工的“工龄”是否可以延伸,如何补偿 公司更换法人代表,让我们员工先离职再入职,那么我的工龄还有效么? 企业更换厂名法人代表,员工有权要求买断工龄吗? 公司变更名称和法人代表后,已再签劳动合同,员工的“工龄”是否可以延伸,如何补偿 原公司被公司领导买下来后,更换了法人,更换了公司名称,这样对老员工的工龄有影响吗? 企业法人变更了,员工签的是无固定期限的劳动合同,新公司接手以前的员工工龄,但是现在员工要拒签劳动 公司转让原公司是否需要赔偿员工工龄? 法人代表是同一个人,两家公司。员工可否变动。社保和工龄怎么算? 公司更名员工工龄归零 是否合法? 我可以把公司告上法庭? 前面营业执照注销,后面法人变更以前的老员工工龄跟后面的法人有关联吗