View Javadoc
1   
2   package com.puppycrawl.tools.checkstyle.grammar.java9;
3   
4   /**
5    * Input for Advance Java 9 try-with-resources.
6    */
7   public class InputAdvanceJava9TryWithResources implements AutoCloseable
8   {
9       public static void main(String[] args) throws Exception {
10          InputAdvanceJava9TryWithResources v = new InputAdvanceJava9TryWithResources();
11  
12          try (v.finalWrapper.finalField) {
13          }
14  
15          try (new InputAdvanceJava9TryWithResources() { }.finalWrapper.finalField) {
16          }
17  
18          try ((args.length > 0 ? v
19                  : new InputAdvanceJava9TryWithResources()).finalWrapper.finalField) {
20          }
21  
22          //More than one resource
23          InputAdvanceJava9TryWithResources i1 = new InputAdvanceJava9TryWithResources();
24          try (i1; InputAdvanceJava9TryWithResources i2 =
25                      new InputAdvanceJava9TryWithResources()) {
26          }
27  
28          InputAdvanceJava9TryWithResources m1 = new InputAdvanceJava9TryWithResources();
29          try (m1; InputAdvanceJava9TryWithResources m2 = m1;
30                  InputAdvanceJava9TryWithResources m3 = m2;) {
31          }
32      }
33  
34      final static FinalWrapper finalWrapper = new FinalWrapper();
35      public void method() throws Exception {
36          try(this.finalWrapper.finalField) {
37          }
38      }
39      static class FinalWrapper {
40          public final AutoCloseable finalField = new AutoCloseable() {
41              @Override
42              public void close() throws Exception {
43              }
44          };
45      }
46      @Override
47      public void close() throws Exception {
48      }
49  }