Why is this an issue?

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;
  }
}