View Javadoc
1   /*
2   SuperFinalize
3   
4   
5   */
6   
7   package com.puppycrawl.tools.checkstyle.checks.coding.superfinalize;
8   
9   public class InputSuperFinalizeVariations
10  {
11      public InputSuperFinalizeVariations() throws Throwable
12      {
13          super.equals(new String());
14          super.finalize();
15      }
16  
17      public void finalize() /**comment test*/throws Throwable
18      {
19          super.finalize();
20      }
21  
22      public void method() throws Throwable
23      {
24          super.finalize();
25      }
26  
27      {
28          super.finalize();
29      }
30  }
31  
32  class NoSuperFinalize
33  {
34      public void finalize() // violation
35      {
36      }
37  }
38  
39  class InputInnerFinalize
40  {
41      public void finalize() // violation
42      {
43          class Inner
44          {
45              public void finalize() throws Throwable
46              {
47                  super.finalize();
48              }
49          }
50      }
51  }
52  
53  //Check that super keyword isn't snagged here
54  class MyClassWithGenericSuperMethod1
55  {
56      void someMethod(java.util.List<? super java.util.Map> l)
57      {
58  
59      }
60  }
61  
62  class TestNative {
63      public native void finalize();
64  }
65  
66  class InputOneMore {
67  
68      public void doSmt() throws Throwable {
69          {
70              {
71                  super.finalize();
72              }
73          }
74      }
75  }
76  
77  class FinalizeWithArgs {
78      public void finalize(Object a) {};
79  }
80  
81  class OverrideClass extends FinalizeWithArgs {
82      @Override
83      protected void finalize() throws Throwable { // violation
84          super.finalize(new Object());
85      }
86  }