1
2
3
4
5
6
7 package com.puppycrawl.tools.checkstyle.checks.coding.unusedlocalvariable;
8
9 import java.lang.annotation.ElementType;
10 import java.lang.annotation.Target;
11
12 public class InputUnusedLocalVariableNestedClasses3 {
13 void method() {
14 final OuterClass outerClass = new OuterClass();
15 final OuterClass.InnerClass innerClass = outerClass.new InnerClass();
16 System.out.println(innerClass);
17 }
18
19 class OuterClass {
20 class InnerClass {
21 InnerClass() { }
22 }
23 }
24
25
26 }
27
28 class Outer {
29 public class Inner { }
30 }
31
32 class Test {
33 void m() {
34 @A Outer p1 = new @A Outer();
35
36 @A Outer.@B Inner p2 = p1.new @B Inner();
37 }
38
39 @Target({ElementType.TYPE_USE, ElementType.TYPE_PARAMETER})
40 @interface A { }
41
42 @Target({ElementType.TYPE_USE, ElementType.TYPE_PARAMETER})
43 @interface B { }
44 }
45
46 class H006_ComplexConstructors<T> {
47 public <V> H006_ComplexConstructors(T t, V v) { }
48
49 class Inner3 {
50 Inner3(int x) {
51 H006_ComplexConstructors<Integer> instance =
52 new <String>H006_ComplexConstructors<Integer>(0, "");
53
54 Object o = instance.new Inner3(5).new <String>InnerInner3("hey");
55 }
56
57 class InnerInner3 {
58 <D> InnerInner3(D in) { }
59 }
60 }
61 }
62
63 class NullQualifiedNew2 {
64 class Inner {
65 Inner(int i) {}
66 }
67
68 public static void main(String[] args) {
69 int i = 1;
70 a: try {
71 NullQualifiedNew2 c = null;
72 c.new Inner(i++) {};
73 } catch (NullPointerException e) {
74 break a;
75 }
76 if (i != 1) throw new Error("i = " + i);
77 }
78 }
79
80 class T7090499<E> {
81
82 static class B<X> { }
83
84 class A<X> {
85 class X { }
86
87 class Z<Y> { }
88 }
89
90 T7090499 t = new T7090499() {
91 void test(Object arg1, B arg2) {
92
93 boolean b = arg1 instanceof A;
94
95 Object a = (A) arg1;
96 A a2 = new A() { };
97 a2.new Z() { };
98 }
99 };
100 }