import java.util.List; import java.util.Arrays; import java.lang.Class; class MethodCalls { public int member; public MethodCalls getSelf() { return this; } public void foo() { } void bar1() { getSelf().getSelf().foo(); } int bar2() { return getSelf().m; } void getDeclaredConstructorTest() { Class clazz = Class.forName(""); clazz.getDeclaredConstructor(); clazz.getDeclaredConstructor(int.class); clazz.getDeclaredConstructor(int.class, int.class); clazz.getDeclaredConstructor(new Class[] { int.class }); } void inheritedInterfaceMethod(){ List list; list.toString(); } void variadicTest(){ String[] varArg = new String[2]; foobar(); foobar("a"); foobar("a", "a"); foobar(varArg); foobar("a", "a", "a", true, "a"); } int foobar(String s){ return 1; } void foobar(String... s){ return; } void variadicMethod(String... s) { this.variadicMethod("test"); } T genericMethod0() { return null; } T genericMethod1(T x) { return x; } static T staticGenericMethod0() { return null; } static T staticGenericMethod1(T x) { return x; } static T variadicStaticGenericMethod(T... x) { return null; } static class GenericClass {} static void variadicWithGenericArg(int i, GenericClass... c) {} void genericMethodTest() { this.genericMethod0(); this.genericMethod1("Hello"); MethodCalls.staticGenericMethod0(); MethodCalls.staticGenericMethod1("Hello"); MethodCalls.variadicWithGenericArg(1, new GenericClass()); MethodCalls.variadicStaticGenericMethod("Hello1", "Hello2"); Arrays.asList("Hello1", "Hello2"); } }