【#|java自定义工具类编写规范】
java自定义工具类编写规范
- 一、编写规范
- 二、编写工具类的两种方式
-
- 1.静态类式
- 2. 单例模式
- 仰天大笑出门去,我辈岂是蓬蒿人
一、编写规范
二、编写工具类的两种方式 1.静态类式
- 工具类定义为
public final class 工具类名称
;- 工具类名称的命名应为
Util结尾
,例如BaseUtil
;- 工具类的构造方法最好为
private
,及这个类无法实例化,无法new出一个工具类;- 工具类的方法应为
static
修饰的,表示静态方法,可直接通过类名.方法名的格式去访问;- 工具类应使用单例模式,不要使用new,重复创建对象,浪费系统资源
- 工具类方法设计为
static
方法- 工具类的构造方法都设计为
private
- 工具类本身以
abstract
修饰
public final class BaseUtil{
private static BaseUtil baseUtil = null;
static{
/** 类加载时创建,只会创建一个对象 */
if(baseUtil == null) baseUtil = new BaseUtil();
}
private BaseUtil(){}
}
2. 单例模式
- 工具类方法都为非static方法
- 讲工具类设计为单例模式,表示一个项目只允许new一个工具类对象,防止反复创建
- 这种方式需要获取工具类对象才能调用,new一个对象,或者放在静态代码块,类加载时创建对象
public final class BaseUtil{
private static volatile BaseUtil baseUtil = null;
private static BaseUtil initInstance(){
if(baseUtil == null){
synchronized(BaseUtil){
if(baseUtil == null) baseUtil = new BaseUtil();
}
}
}
private BaseUtil(){ }
}
- 参考百度文库整理的规范
推荐阅读
- #|java排序混乱的字符串字母和数字排序
- #|AES解密报错,Input length must be multiple of 16 when decrypting with padded cipher
- #|Mybatis的if else妙用(Choose标签使用)
- 框架大集合|【MyBatis详解】——动态SQL解析与执行原理
- java|如何在 ACK 中使用 MSE Ingress
- Redis|Redis实现分布式锁
- spring|springAOP 通过注解实现 日志打印
- java|java基础巩固16
- 抖音|java 抖音开放平台 code token等