我有一个名为CommandHelp
的班级。它存储了一些字符串(显然)描述了命令的作用,它的别名是什么,它需要的参数以及我需要注册的关于命令的任何其他内容。
CommandHelp.toString()
是一个"复杂的"方法因为它不返回命令名称或任何简短的名称,例如"命令:GOTO"而是返回(通常)200个字符长的String
对象。
该课程还有一个toOneLineString()
方法。
问题是:
应该避免toString
- 作为方法的名称吗?将toFullString
或toFullCommandDescription
用作该方法的名称会被视为一种良好做法(或更好的做法)?
编辑:toString()被覆盖。我只是问我在那里实现的方法是否应该在另一个方法名称下重构。
答案 0 :(得分:4)
智慧是toString()
只应该用于人类阅读,开发人员可以随意改变实施,而不会影响程序的行为。
生成其他代码所依赖的具有特定格式的String的方法不应以任何方式涉及toString()
。
您对特殊方法的想法似乎正确。请考虑使用getDescription()
等方法名称。