01: package testlib.scope;
02:
03: public class ClassScopeChange {
04: // public class is unchanged
05: public static class A1 {
06: }
07:
08: // public class becomes protected
09: protected static class A2 {
10: }
11:
12: // public class becomes package
13: static class A3 {
14: }
15:
16: // public class becomes private
17: private static class A4 {
18: }
19:
20: // protected class is unchanged
21: protected static class B1 {
22: }
23:
24: // protected class becomes public
25: public static class B2 {
26: }
27:
28: // protected class becomes package
29: static class B3 {
30: }
31:
32: // protected class becomes private
33: private static class B4 {
34: }
35:
36: // package class is unchanged
37: static class C1 {
38: }
39:
40: // package class becomes public
41: public static class C2 {
42: }
43:
44: // package class becomes protected
45: protected static class C3 {
46: }
47:
48: // package class becomes private
49: private static class C4 {
50: }
51:
52: // private class is unchanged
53: private static class D1 {
54: }
55:
56: // private class becomes public
57: public static class D2 {
58: }
59:
60: // private class becomes protected
61: protected static class D3 {
62: }
63:
64: // private class becomes package
65: static class D4 {
66: }
67:
68: // unchanged scope of class defined inside method body
69: private void method1() {
70: class E1 {
71: }
72: ;
73: E1 e1 = new E1();
74: }
75: }
|