KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > j2biz > pencil > test > scenario > refCall > DotCall


1 /*
2  * Copyright 2004 Andreas Siebert (j2biz community)
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7
8  * http://www.apache.org/licenses/LICENSE-2.0
9
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */

16 package com.j2biz.pencil.test.scenario.refCall;
17
18 import com.j2biz.log.LOG;
19 import com.j2biz.pencil.test.additional.DotCallTestObject;
20
21 /**
22  * @author Andreas Siebert
23  *
24  * (c) 2004 by Andreas Siebert / j2biz.com
25  */

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