== Why is this an issue? A method or class with too many type parameters has likely aggregated too many responsibilities and should be split. === Noncompliant code example With the default parameter value of 2: [source,text] ---- void foo() {} // Noncompliant; not really readable foo(); // especially on invocations ----