I. BACKGROUND
For some tool classes such as Java.lang.Math, Java.util.Arrays, and so on, they contain only static methods and static field fields, and there is no point in instantiating such a class. But in practice, such a class can be instantiated just like any other class without any special handling.
Ii. Methods of Treatment
The constructor is set to private so that the outer class cannot instantiate the class and throw an exception directly in the private constructor to avoid being instantiated inside the class.
public class Utilityclass {
//private constructor, internal instantiation throws exception
private Utilityclass () {
throw new Assertionerror ();
}
}
Iii. Advantages and Disadvantages
After this definition, the class cannot be instantiated internally and externally, or a compilation error or throw exception occurs, but the side effect is that the class will not be instantiated.
Author: csdn Blog zdp072
See more highlights of this column: http://www.bianceng.cnhttp://www.bianceng.cn/Programming/Java/