Classes with only private constructors should be marked final to prevent any mistaken extension attempts.
Noncompliant code example
public class PrivateConstructorClass {  // Noncompliant
  private PrivateConstructorClass() {
    // ...
  }
  public static int magic(){
    return 42;
  }
}
Compliant solution
public final class PrivateConstructorClass {  // Compliant
  private PrivateConstructorClass() {
    // ...
  }
  public static int magic(){
    return 42;
  }
}