一、何处使用
我们在定义工具类的时候,里面的方法都是静态的,所以这些类的实例化是没有必要的
二、方案
1.将该类定义成抽象类
这种方式虽然能避免该类不能被创建实例,但是他的子类可以创建对象
2.将该类的构造方法私有化
这种方式正常情况下,不能new对象,但是,可以通过java反射,来创建对象,所以该方式也不可行
3.在方法2的基础上,在私有构造方法中,抛出异常
public class Utils {
private Utils() {
throw new AssertionError();
}
}