Serializable, Comparable<NestingKind>public enum NestingKind extends Enum<NestingKind>
Note that it is possible additional nesting kinds will be added in future versions of the platform.
Example: The classes below are annotated with their nesting kind.
import java.lang.annotation.*;
import static java.lang.annotation.RetentionPolicy.*;
import javax.lang.model.element.*;
import static javax.lang.model.element.NestingKind.*;
@Nesting(TOP_LEVEL)
public class NestingExamples {
@Nesting(MEMBER)
static class MemberClass1{}
@Nesting(MEMBER)
class MemberClass2{}
public static void main(String... argv) {
@Nesting(LOCAL)
class LocalClass{};
Class<?>[] classes = {
NestingExamples.class,
MemberClass1.class,
MemberClass2.class,
LocalClass.class
};
for(Class<?> clazz : classes) {
System.out.format("%s is %s%n",
clazz.getName(),
clazz.getAnnotation(Nesting.class).value());
}
}
}
@Retention(RUNTIME)
@interface Nesting {
NestingKind value();
}
| 枚举常量 | 说明 |
|---|---|
ANONYMOUS |
A type without a name.
|
LOCAL |
A named type declared within a construct other than a type.
|
MEMBER |
A type that is a named member of another type.
|
TOP_LEVEL |
A top-level type, not contained within another type.
|
| 限定符和类型 | 方法 | 说明 |
|---|---|---|
boolean |
isNested() |
Does this constant correspond to a nested type element?
A nested type element is any that is not top-level.
|
static NestingKind |
valueOf(String name) |
返回带有指定名称的该类型的枚举常量。
字符串必须与用于声明该类型的枚举常量的
标识符完全匹配。(不允许有多余
的空格字符。)
|
static NestingKind[] |
values() |
按照声明该枚举类型的常量的顺序, 返回
包含这些常量的数组。该方法可用于迭代
常量, 如下所示:
for (NestingKind c : NestingKind.values()) System.out.println(c); |
public static final NestingKind TOP_LEVEL
public static final NestingKind MEMBER
public static final NestingKind LOCAL
public static final NestingKind ANONYMOUS
public static NestingKind[] values()
for (NestingKind c : NestingKind.values()) System.out.println(c);
public static NestingKind valueOf(String name)
name - 要返回的枚举常量的名称。IllegalArgumentException - 如果该枚举类型没有带有指定名称的常量NullPointerException - 如果参数为空值public boolean isNested()