如何编写一个Java工具类

47次阅读
没有评论

共计 852 个字符,预计需要花费 3 分钟才能阅读完成。

今天就跟大家聊聊有关如何编写一个 Java 工具类,可能很多人都不太了解,为了让大家更加了解,丸趣 TV 小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

今天我也以如何编写一个 Java 工具类为话题,给大家规范一下工具类如何编写

最近我在做 code review 时,发现了一些开发人员在编写工具类时的小问题,所以在这里我简单的讲一下我的个人理解。

首先说明一下,这个工具类的规范不是我定义的,而是我参考众多知名开源框架发现的。

先说第一种情况,如果工具类中的方法全部时静态方法,那么可以将工具类作为一个 abstract 抽象类。Spring 框架中存在大量的这样的使用。

然后,如果工具类中有异常,请抛出,不要自己去 try-catch。更不要 try 了之后 e.printStackTrace()。

还有就是工具类中要不要打印日志问题,尽量不要打印,像 log4j 这样的一些第三方日志框架也不要用。降低于第三方类库的依赖。

还有一情况是,工具类中的方法非 static 的。那你可以将工具类定义为 final class,考虑到工具类应该不能被继承。在私有化它的构造函数,提供一个单例。

工具类的命名应该用 Util 结尾,例如 LogUtil。

像下面这种工具类,就千万要注意了。

至于工具类中的方法应该设计为静态的还是非静态的,这个没有统一的标准。各有各的好,参加大多数开源框架,static 的多一些。

工具类的设计,推荐大家多看看  Guava、Apache Commons。

像大名鼎鼎的 Hutool,它提到了工具类的 6 大设计思想。方法优先于对象、自动识别优于用户定义、便捷性与灵活性并存、适配与兼容、可选依赖原则、无侵入原则。

Hutool 中的工具类,既没有采用抽象类 abstract class 有没有采用 final class。所以我更喜欢 Spring、Guava、Apache Commons 等框架的源码。

看完上述内容,你们对如何编写一个 Java 工具类有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注丸趣 TV 行业资讯频道,感谢大家的支持。

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-25发表,共计852字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)