1
3
当类未重写时
或者,您可以利用反射:
显然,这是一个很大的工作-但没有技术原因为什么这不应该工作。当然,这里的主要问题可能是减少要查看的类的数量——一个包含500个类的列表也不会有太大帮助。
还有一个(潜在的)选项:创建一个PojoBase类,该类使用
反射
实现toString()和equals()/hashCode()-然后简单地确保所有POJO类都扩展了该基类。(免责声明:当然,你必须理解这样做的后果。但我们最近创建了这样一个
|
2
2
Reflections Library 要获取给定包中的所有类,请注意,这不适用于匿名、私有、部分、不可访问等类,因此最好的方法是根据 @幽灵猫 答复 this answer 通过 @斯塔尔
然后迭代类,并检查toString是否在类本身中声明
|
3
2
介绍摘要
这将迫使所有子类重写它,如果不重写,则会出现编译错误。 不幸的是,这种方法有一个主要的限制。如果你有这样的东西:
它不会注意到丢失的
这个方法可能不适合你,但我想无论如何我都会发布它,这样也许它会帮助其他阅读你问题的人。 |
4
1
使用反射。在我的项目中,我为每个域对象编写测试。测试检查是否
若你们想识别所有并没有覆盖toString的类,你们可以编写一个工具来扫描类路径,并为每个类(从你们的包中)调用这样的测试。但这种方法有局限性。并非所有类都需要toString。服务类、REST控制器等不需要字符串。所以自动化会给你带来很多误报。您可以只扫描带有模型类的包(如果您将模型放在单独的包中)或使用自定义注释注释模型类(然后只扫描带注释的类),但我认为这样的解决方案不值得这么做。 https://projectlombok.org/ https://immutables.github.io/ 或 https://github.com/google/auto/tree/master/value 在我的项目中,我为每个域对象编写了这样的测试。 |
5
0
|
Endriu · 在Weblogic上运行Java应用程序 1 年前 |
Paul DeWolf · EclipseJavaFX和Android 2 年前 |
nijeg52273 · RCP Oomph安装程序创建指南 2 年前 |
Varsha · 如何对动态生成的树项执行单个选择? 2 年前 |