- 所谓工具类,就是在API中只有静态的方法或者属性。
- 对工具类应该隐藏default或者public构造器,方法就是构造器的访问属性设为private的、或者protected(如果希望有子类的话)。
背后的原理:对工具类进行实例化没有意义。
checkstyle用HideUtilityClassConstructor检查是否违反上面的规则:https://checkstyle.sourceforge.io/checks/design/hideutilityclassconstructor.html
例如,一个工具类有默认的构造器,所以检查报违反项:
修改方法就是定义一个private的空构造器。例如: