| 1 16 17 package com.j2biz.pencil.test.scenario.impl.refCall; 18 19 import com.j2biz.pencil.test.additional.DotCallTestObject; 20 import com.j2biz.pencil.test.additional.TestLog; 21 import com.j2biz.pencil.test.scenario.refCall.DotCallTestObjectSamePackage; 22 23 28 public class DotCall extends DotCallTestObject { 29 public static DotCallTestObject object = new DotCallTestObject(); 30 31 public DotCallTestObjectSamePackage packageWideObj = new DotCallTestObjectSamePackage(); 32 33 public static DotCall referenceMe = new DotCall(1); 34 35 public static int publicStaticField = new Integer (1).intValue(); 36 37 public int publicField = new Integer (2).intValue(); 38 39 protected int protectedField = new Integer (3).intValue(); 40 41 private int privateField = new Integer (4).intValue(); 42 43 public class ExtendsClass3 extends DotCallTestObjectSamePackage { 44 ; 45 } 46 47 public class ExtendsClass extends DotCallTestObject { 48 ; 49 } 50 51 public class ExtendsClass2 extends NestedClass { 52 ; 53 } 54 55 public class TypeTestClass { 56 public int intField = new Integer (1).intValue(); 57 public short shortField = new Short ((short) 2).shortValue(); 58 public byte byteField = new Byte ((byte) 3).byteValue(); 59 public char charField = new Character ('a').charValue(); 60 public long longField = new Long (1).longValue(); 61 public float floatField = new Float (2).floatValue(); 62 public double doubleField = new Double (3).doubleValue(); 63 } 64 65 private class InnerClass { 66 private class InnerClass2 { 67 private int privateField = new Integer (1).intValue(); 68 } 69 } 70 71 private class NestedClass { 72 private int privateField = new Integer (12).intValue(); 73 protected int protectedField = new Integer (13).intValue(); 74 public int publicField = new Integer (14).intValue(); 75 76 public void testSubClass() { 77 ExtendsClass2 subClassCalledInSuper = new ExtendsClass2(); 78 TestLog.debug("DotCall.NestedClass.<init>.subClassCalledInSuper.public = " + subClassCalledInSuper.publicField); 79 TestLog.debug("DotCall.NestedClass.<init>.subClassCalledInSuper.protected = " + subClassCalledInSuper.protectedField ); 80 TestLog.debug("DotCall.NestedClass.<init>.subClassCalledInSuper.private = ${subClassCalledInSuper.privateField}" ); 81 } 82 } 83 84 85 private class ExtendsClass4 extends NestedClass2 { 86 private int privateField = new Integer (12).intValue(); 87 protected int protectedField = new Integer (13).intValue(); 88 public int publicField = new Integer (14).intValue(); 89 } 90 91 private class NestedClass2 { 92 public void testSubClass() { 93 ExtendsClass4 subClassCalledInSuper = new ExtendsClass4(); 94 TestLog.debug("DotCall.NestedClass2.<init>.subClassCalledInSuper.public = " + subClassCalledInSuper.publicField); 95 TestLog.debug("DotCall.NestedClass2.<init>.subClassCalledInSuper.protected = " + subClassCalledInSuper.protectedField ); 96 TestLog.debug("DotCall.NestedClass2.<init>.subClassCalledInSuper.private = "+subClassCalledInSuper.privateField ); 97 } 98 } 99 100 101 static { 102 TestLog.debug("DotCall.<clinit>.field1 = " + object.field1); 103 TestLog.debug("DotCall.<clinit>.field2 = ${object.field2}"); 104 105 TestLog.debug("DotCall.<clinit>.field1.privateField = ${object.field1.privateField}"); 106 TestLog.debug("DotCall.<clinit>.field1.protectedField = ${object.field1.protectedField}"); 107 TestLog.debug("DotCall.<clinit>.field1.publicField = " + object.field1.publicField ); 108 109 TestLog.debug("DotCall.<clinit>.field2 = ${object.field2}"); 110 TestLog.debug("DotCall.<clinit>.fieldNotExist = ${object.fieldNotExist}"); 111 112 DotCallTestObject objectLocal = new DotCallTestObject(); 113 TestLog.debug("DotCall.<clinit>.objectLocal.field1 = " +objectLocal.field1 ); 114 115 } 116 117 { 118 119 TestLog.debug("DotCall.<init>.packageWideObj = " + packageWideObj.publicField); 120 TestLog.debug("DotCall.<init>.packageWideObj.protected = ${packageWideObj.protectedField}"); 121 122 TestLog.debug("DotCall.<init>.field1 = " + object.field1); 123 TestLog.debug("DotCall.<init>.this.field1 = " + this.object.field1); 124 125 TestLog.debug("DotCall.<init>.field1.privateField = ${object.field1.privateField}"); 126 TestLog.debug("DotCall.<init>.field1.protectedField = ${object.field1.protectedField}"); 127 TestLog.debug("DotCall.<init>.field1.publicField = " + object.field1.publicField ); 128 129 TestLog.debug("DotCall.<init>.field2 = ${object.field2}"); 130 TestLog.debug("DotCall.<init>.fieldNotExist = ${object.fieldNotExist}"); 131 132 DotCallTestObject objectLocal = new DotCallTestObject(); 133 TestLog.debug("DotCall.<init>.objectLocal.field1 = " +objectLocal.field1 ); 134 } 135 136 public DotCall() { 137 class EmbeddedClass { 138 private int privateField = new Integer (42).intValue(); 139 } 140 141 TestLog.debug("DotCall.<constructor>.referenceMe.public = " + referenceMe.publicField); 142 TestLog.debug("DotCall.<constructor>.referenceMe.protected = " + referenceMe.protectedField); 143 TestLog.debug("DotCall.<constructor>.referenceMe.private = " + referenceMe.privateField); 144 145 TestLog.debug("DotCall.<constructor>.parentClass.public = " + referenceMe.field1); 146 TestLog.debug("DotCall.<constructor>.parentClass.protected = " + referenceMe.field2); 147 TestLog.debug("DotCall.<constructor>.parentClass.private = ${referenceMe.field3}"); 148 149 InnerClass.InnerClass2 subClass = new InnerClass().new InnerClass2(); 150 TestLog.debug("DotCall.<constructor>.subClass.private = " + subClass.privateField); 151 152 NestedClass nestedClass = new NestedClass(); 153 TestLog.debug("DotCall.<constructor>.nestedClass.private = " + nestedClass.privateField); 154 155 nestedClass.testSubClass(); 156 157 EmbeddedClass embeddedClass = new EmbeddedClass(); 158 TestLog.debug("DotCall.<constructor>.embeddedClass.private = " + embeddedClass.privateField); 159 160 TypeTestClass typeTest = new TypeTestClass(); 161 TestLog.debug("DotCall.<constructor>.typeTest.intField = ${typeTest.intField.value}"); 162 TestLog.debug("DotCall.<constructor>.typeTest.shortField = ${typeTest.shortField.value}"); 163 TestLog.debug("DotCall.<constructor>.typeTest.byteField = ${typeTest.byteField.value}"); 164 TestLog.debug("DotCall.<constructor>.typeTest.charField = ${typeTest.charField.value}"); 165 TestLog.debug("DotCall.<constructor>.typeTest.longField = ${typeTest.longField.value}"); 166 TestLog.debug("DotCall.<constructor>.typeTest.doubleField = ${typeTest.doubleField.value}"); 167 TestLog.debug("DotCall.<constructor>.typeTest.floatField = ${typeTest.floatField.value}"); 168 169 ExtendsClass extendsClass = new ExtendsClass(); 170 TestLog.debug("DotCall.<constructor>.extendsClass.public = " + extendsClass.field1); 171 TestLog.debug("DotCall.<constructor>.extendsClass.protected = ${extendsClass.field2}"); 172 TestLog.debug("DotCall.<constructor>.extendsClass.private = ${extendsClass.field3}"); 173 174 ExtendsClass2 extendsClass2 = new ExtendsClass2(); 175 TestLog.debug("DotCall.<constructor>.extendsClass2.public = " + extendsClass2.publicField); 176 TestLog.debug("DotCall.<constructor>.extendsClass2.protected = " + extendsClass2.protectedField); 177 TestLog.debug("DotCall.<constructor>.extendsClass2.private = ${extendsClass2.privateField}" ); 178 179 ExtendsClass3 extendsClass3 = new ExtendsClass3(); 180 TestLog.debug("DotCall.<constructor>.extendsClass3.public = " + extendsClass3.publicField); 181 TestLog.debug("DotCall.<constructor>.extendsClass3.protected = ${extendsClass3.protectedField}"); 182 TestLog.debug("DotCall.<constructor>.extendsClass3.private = ${extendsClass3.privateField}" ); 183 184 ExtendsClass4 extendsClass4 = new ExtendsClass4(); 185 extendsClass4.testSubClass(); 186 } 187 188 public DotCall(int test) { 189 ; } 192 193 public static void main(String [] args) { 194 new DotCall(); 195 } 196 } 197 | Popular Tags |