import java.nio.channels.IllegalSelectorException; class Tester { void bar() { A a = new A(); // Noncompliant [[sc=15;ec=16]] {{Remove this instantiation of "A".}} D d = new D(); // Noncompliant {{Remove this instantiation of "D".}} E e = new E(); // Noncompliant {{Remove this instantiation of "E".}} F f = new F(); // Noncompliant {{Remove this instantiation of "F".}} InnerClass i1 = new InnerClass(); // Noncompliant {{Remove this instantiation of "InnerClass".}} Tester.InnerClass i2 = new Tester.InnerClass(); // Noncompliant [[sc=32;ec=49]] {{Remove this instantiation of "InnerClass".}} J<A> j = new J<A>(); // Noncompliant {{Remove this instantiation of "J".}} B b = new B(); // Compliant C c = new C(); // Compliant G g = new G(); // Compliant K k = new K(); // Compliant L l = new L(); // Compliant } static class InnerClass { static void foo() { } } void foo() throws NumberFormatException { throw new NumberFormatException(); // Compliant } } class A { A() { } static void foo() { } } class B { } class C extends A { } class D extends A { static int val; static void bar() { } } class E { static int val; public static void foo() { } } class F extends A { static void bar() { } } class G { int val; void foo() { } } class J<T> { static void foo() { } } class K { enum myEnum { FOO } } class L { class M { } } class M { M() { } public static M foo() { return new M(); // Compliant } } public class OuterClass { public static class InnerClass { public final String field; public static void someStaticMethod( ) { } } public InnerClass someOuterClassMethod() { return new InnerClass(); } } class UsageOfInterface { void bar() { (new MyInterface2() { // should be compliant @Override public void foo(String s) { }; }).foo("hello"); new TestCase(); } } interface MyInterface1 { void foo(String s); } interface MyInterface2 extends MyInterface1 { String FOO = "BOO!!"; } interface MyInterface3 { default void foo(String s) { } } class TestCase implements MyInterface3 { static void plop() { } }