effective_java阅读笔记3

effective_java阅读笔记3
Enforce noninstantiability with a private constructor用一个私有的构造函数来让一个类不可以实例化

Occasionally you'll want to write a class that is just a grouping of static methods and static fields.有时候,你想写一个类,只是需要他提供了一系列的函数操作等,而不想让它实例化.如:java.lang.Math or java.util.Arrays.
但是如果你不提供构造函数,编译器会自动添加一个.
所以必须提供一个.此时,把构造函数设置为private.就可以达到目的.
一般用与工具类.

// Noninstantiable utility class
public class UtilityClass {
// Suppress default constructor for noninstantiability
private UtilityClass() {
// This constructor will never be invoked
}
... // Remainder omitted
}

由于private的构咱函数,该类不能被实例化.同时.不能被继承了.

你可能感兴趣的:(effective_java阅读笔记3)