| public class FieldDotExpressions { |
| public static void main(String[] args) { |
| InnerClassFieldContainer.outerField.containerField.containerField.firstContainerMethod(); |
| InnerClassFieldContainer.InnerClass.innerField.containerField.containerField.secondContainerMethod(); |
| InnerClassFieldContainer.InnerClass.InnerInnerClass.InnerInnerInnerClass.innerInnerInnerField.thirdContainerMethod(); |
| } |
| } |
| |
| class FieldContainer { |
| FieldContainer containerField = new FieldContainer(); |
| public String firstContainerMethod() { |
| return "firstContainerMethod()"; |
| } |
| public String secondContainerMethod() { |
| return "secondContainerMethod()"; |
| } |
| public String thirdContainerMethod() { |
| return "thirdContainerMethod()"; |
| } |
| } |
| |
| class InnerClassFieldContainer { |
| FieldContainer outerField = new FieldContainer(); |
| class InnerClass { |
| FieldContainer innerField = new FieldContainer(); |
| class InnerInnerClass { |
| FieldContainer innerInnerField = new FieldContainer(); |
| class InnerInnerInnerClass { |
| FieldContainer innerInnerInnerField = new FieldContainer(); |
| } |
| } |
| } |
| } |