|
1 | 1 | /* |
2 | | - * Copyright (c) 2005, 2022, Oracle and/or its affiliates. All rights reserved. |
| 2 | + * Copyright (c) 2005, 2024, Oracle and/or its affiliates. All rights reserved. |
3 | 3 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 | 4 | * |
5 | 5 | * This code is free software; you can redistribute it and/or modify it |
@@ -51,38 +51,120 @@ public enum Modifier { |
51 | 51 |
|
52 | 52 | // Note java.lang.reflect.Modifier includes INTERFACE, but that's a VMism. |
53 | 53 |
|
54 | | - /** The modifier {@code public} */ PUBLIC, |
55 | | - /** The modifier {@code protected} */ PROTECTED, |
56 | | - /** The modifier {@code private} */ PRIVATE, |
57 | | - /** The modifier {@code abstract} */ ABSTRACT, |
| 54 | + /** |
| 55 | + * The modifier {@code public} |
| 56 | + * |
| 57 | + * @jls 6.6 Access Control |
| 58 | + */ |
| 59 | + PUBLIC, |
| 60 | + |
| 61 | + /** |
| 62 | + * The modifier {@code protected} |
| 63 | + * |
| 64 | + * @jls 6.6 Access Control |
| 65 | + */ |
| 66 | + PROTECTED, |
| 67 | + |
| 68 | + /** |
| 69 | + * The modifier {@code private} |
| 70 | + * |
| 71 | + * @jls 6.6 Access Control |
| 72 | + */ |
| 73 | + PRIVATE, |
| 74 | + |
| 75 | + /** |
| 76 | + * The modifier {@code abstract} |
| 77 | + * |
| 78 | + * @jls 8.1.1.1 {@code abstract} Classes |
| 79 | + * @jls 8.4.3.1 {@code abstract} Methods |
| 80 | + * @jls 9.1.1.1 {@code abstract} Interfaces |
| 81 | + */ |
| 82 | + ABSTRACT, |
| 83 | + |
58 | 84 | /** |
59 | 85 | * The modifier {@code default} |
| 86 | + * |
| 87 | + * @jls 9.4 Method Declarations |
60 | 88 | * @since 1.8 |
61 | 89 | */ |
62 | 90 | DEFAULT, |
63 | | - /** The modifier {@code static} */ STATIC, |
| 91 | + |
| 92 | + /** |
| 93 | + * The modifier {@code static} |
| 94 | + * |
| 95 | + * @jls 8.1.1.4 {@code static} Classes |
| 96 | + * @jls 8.3.1.1 {@code static} Fields |
| 97 | + * @jls 8.4.3.2 {@code static} Methods |
| 98 | + * @jls 9.1.1.3 {@code static} Interfaces |
| 99 | + */ |
| 100 | + STATIC, |
64 | 101 |
|
65 | 102 | /** |
66 | 103 | * The modifier {@code sealed} |
| 104 | + * |
| 105 | + * @jls 8.1.1.2 {@code sealed}, {@code non-sealed}, and {@code final} Classes |
| 106 | + * @jls 9.1.1.4 {@code sealed} and {@code non-sealed} Interfaces |
67 | 107 | * @since 17 |
68 | 108 | */ |
69 | 109 | SEALED, |
70 | 110 |
|
71 | 111 | /** |
72 | 112 | * The modifier {@code non-sealed} |
| 113 | + * |
| 114 | + * @jls 8.1.1.2 {@code sealed}, {@code non-sealed}, and {@code final} Classes |
| 115 | + * @jls 9.1.1.4 {@code sealed} and {@code non-sealed} Interfaces |
73 | 116 | * @since 17 |
74 | 117 | */ |
75 | 118 | NON_SEALED { |
76 | 119 | public String toString() { |
77 | 120 | return "non-sealed"; |
78 | 121 | } |
79 | 122 | }, |
80 | | - /** The modifier {@code final} */ FINAL, |
81 | | - /** The modifier {@code transient} */ TRANSIENT, |
82 | | - /** The modifier {@code volatile} */ VOLATILE, |
83 | | - /** The modifier {@code synchronized} */ SYNCHRONIZED, |
84 | | - /** The modifier {@code native} */ NATIVE, |
85 | | - /** The modifier {@code strictfp} */ STRICTFP; |
| 123 | + /** |
| 124 | + * The modifier {@code final} |
| 125 | + * |
| 126 | + * @jls 8.1.1.2 {@code sealed}, {@code non-sealed}, and {@code final} Classes |
| 127 | + * @jls 8.3.1.2 {@code final} Fields |
| 128 | + * @jls 8.4.3.3 {@code final} Methods |
| 129 | + */ |
| 130 | + FINAL, |
| 131 | + |
| 132 | + /** |
| 133 | + * The modifier {@code transient} |
| 134 | + * |
| 135 | + * @jls 8.3.1.3 {@code transient} Fields |
| 136 | + */ |
| 137 | + TRANSIENT, |
| 138 | + |
| 139 | + /** |
| 140 | + * The modifier {@code volatile} |
| 141 | + * |
| 142 | + * @jls 8.3.1.4 {@code volatile} Fields |
| 143 | + */ |
| 144 | + VOLATILE, |
| 145 | + |
| 146 | + /** |
| 147 | + * The modifier {@code synchronized} |
| 148 | + * |
| 149 | + * @jls 8.4.3.6 {@code synchronized} Methods |
| 150 | + */ |
| 151 | + SYNCHRONIZED, |
| 152 | + |
| 153 | + /** |
| 154 | + * The modifier {@code native} |
| 155 | + * |
| 156 | + * @jls 8.4.3.4 {@code native} Methods |
| 157 | + */ |
| 158 | + NATIVE, |
| 159 | + |
| 160 | + /** |
| 161 | + * The modifier {@code strictfp} |
| 162 | + * |
| 163 | + * @jls 8.1.1.3 {@code strictfp} Classes |
| 164 | + * @jls 8.4.3.5 {@code strictfp} Methods |
| 165 | + * @jls 9.1.1.2 {@code strictfp} Interfaces |
| 166 | + */ |
| 167 | + STRICTFP; |
86 | 168 |
|
87 | 169 | /** |
88 | 170 | * Returns this modifier's name as defined in <cite>The |
|
0 commit comments