Java super.toString()或使用属性名
假设我有Person(字符串名)和Student(字符串名,字符串课程),它们扩展了Person 在Student上重写toString()时,有什么更好的方法Java super.toString()或使用属性名,java,Java,假设我有Person(字符串名)和Student(字符串名,字符串课程),它们扩展了Person 在Student上重写toString()时,有什么更好的方法 return super.toString() + " course: " + course; //or return "name: " + name + " course: " + course; 这一点都不重要,但归根结底是你希望学生和人之间的关系是什么样的。如果您希望学生的toString()方法始终是super.toStrin
return super.toString() + " course: " + course;
//or
return "name: " + name + " course: " + course;
这一点都不重要,但归根结底是你希望学生和人之间的关系是什么样的。如果您希望学生的
toString()
方法始终是super.toString()+“课程:“+course
,这样,当您修改人的toString()
时,学生的toString()
会发生变化,那么请确保这是正确的方法。然而,如果你想让学生的toString()
不依赖于Person的toString()
,那么就不要包括对Super的调用。这一点都不重要,但归根结底是你想要学生和Person的关系是什么。如果您希望学生的toString()
方法始终是super.toString()+“课程:“+course
,这样,当您修改人的toString()
时,学生的toString()
会发生变化,那么请确保这是正确的方法。但是,如果您希望Student的toString()
不依赖Person的toString()
,则不要在第二种方法Super中包含对Super的调用。。toString()
不好。因为toString()
可以返回除name
之外的任何其他内容。第一个对你来说会更好。但是使用super.toString()
不会有任何问题,只要您确定它将只返回name
,并且始终返回。但我更愿意使用第一种方法 在第二种方法中super.toString()
不好。因为toString()
可以返回除name
之外的任何其他内容。第一个对你来说会更好。但是使用super.toString()
不会有任何问题,只要您确定它将只返回name
,并且始终返回。但我更愿意使用第一种方法
return super.toString() + " course: " + course;
这两种选择几乎都一样好。然而,第一个是更好的设计从维护的角度来看,考虑未来的情况下,如果你想添加新的属性到人类发言地址。然后,使用第一个选项可以避免在两个地方进行更新。通过选项一,更新Person的toString方法也会在Students toString中添加新属性
S.: -考虑使用String Bu建器,而不是串联字符串。
这两种选择几乎都一样好。然而,第一个是更好的设计从维护的角度来看,考虑未来的情况下,如果你想添加新的属性到人类发言地址。然后,使用第一个选项可以避免在两个地方进行更新。通过选项一,更新Person的toString方法也会在Students toString中添加新属性S.S::考虑使用String Bu建器代替字符串连接。
考虑Suff.ToString。考虑Suff.ToString。在下投票时,考虑添加注释,以便我们能够改进。在进行投票时,考虑添加注释,以便我们能够改进。