staticメソッド、staticフィールド(定数)だけからなるクラスを各場合、privateコンストラクタを作成し、
インスタンス化を不可能にする、という内容です。
記載内容
具体的なコンストラクタ定義
以下の様なコンストラクタを定義し、クラスの内部からも含めてインスタンス化が出来ないようにするべき。
Java
// インスタンス化できないように、デフォルトコンストラクタを抑制する
private UtilityClass() {
throw new AssertionError();
}
Collectionsの様なインタフェースに対するユーティリティクラス
Java8からは、インタフェースにstaticメソッドを定義可能になっているため、
Collectionインタフェースにメソッドを直接定義可能になっている。
考察
privateコンストラクタは、既に一般化されてテクニックとなっており、特に疑問点等は無いと思います。
Java8からは、インタフェースに関するファクトリメソッドは、インタフェース自体に定義するべきと思います。