1 package com.puppycrawl.tools.checkstyle.checks.coding.illegaltype;
2
3 public class InputIllegalTypeAbstractClassNames {
4
5 abstract class AbstractClass {
6 abstract String getClassInfo();
7 abstract boolean isPerfectClass();
8 }
9
10 class MyNonAbstractClass extends AbstractClass {
11
12 boolean perfect = true;
13
14 private MyNonAbstractClass() {}
15
16 @Override
17 String getClassInfo() {
18 return "This is my non abstract class.";
19 }
20
21 @Override
22 boolean isPerfectClass() {
23 return perfect;
24 }
25 }
26
27 AbstractClass a = new MyNonAbstractClass();
28
29 public String getInnerClassInfo(AbstractClass clazz) {
30 return clazz.getClassInfo();
31 }
32
33 public AbstractClass newInnerClassInstance() {
34 return new MyNonAbstractClass();
35 }
36 }