为了账号安全,请及时绑定邮箱和手机立即绑定

要是对象的属性很多的话,岂不是很麻烦?请高手指点一下

要是对象的属性很多的话,岂不是很麻烦?请高手指点一下

慕的地6264312 2022-12-17 17:13:22
比如有这样一个对象:public Class CsvCon(){protected String jobName;protected String workflow;getJobName();{return jobName};getWorkflow();{return workflow};}CsvCon a = new CsvCon ();a.jobName =1;a.workflow=2;CsvCon b = new CsvCon ();b.jobName =3;b.workflow=4;在调用Junit的比较方法,直接比较两个对象,assertEquals(a,b);报出信息:<a@c7b00c>but was <b@1f6f23>以上是不是说明Junit不支持的直接比较。想比较对象里的属性是否相同,必须用get()方法,把属性取出来再比较才可以,像下面这样assertEquals(a.getJobName(),b.getJobName());
查看完整描述

2 回答

?
弑天下

TA贡献1818条经验 获得超8个赞

肯定是这样的,你直接比较的是对象的引用。
既然是new的两个对象,那他们的引用肯定是不同的,也就是说,虽然他们内容相同,但实质上是两个东西。
就比如两个人都叫张三,你不能说他们是同一个人,只能说他们具有相同的名字。

查看完整回答
反对 回复 2022-12-21
?
BIG阳

TA贡献1859条经验 获得超6个赞

a.jobName =1
这样能赋值么?

查看完整回答
反对 回复 2022-12-21
  • 2 回答
  • 0 关注
  • 154 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号