- java.lang.Object
-
- java.lang.Enum<NestingKind>
-
- javax.lang.model.element.NestingKind
-
- All Implemented Interfaces:
-
Serializable
,Comparable<NestingKind>
public enum NestingKind extends Enum<NestingKind>
一种类型元素的嵌套类型。 类型元素有四个品种:顶级,成员,本地和匿名。 嵌套类是这里用于表示此分类的非标准术语。请注意,未来版本的平台中可能会添加其他嵌套类型。
示例:下面的类使用它们的嵌套类型进行注释。
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(); }
- 从以下版本开始:
- 1.6
-
-
方法摘要
所有方法 静态方法 接口方法 具体的方法 Modifier and Type 方法 描述 boolean
isNested()
这个常数是否对应于嵌套的类型元素?static NestingKind
valueOf(String name)
以指定的名称返回此类型的枚举常量。static NestingKind[]
values()
按照它们声明的顺序返回一个包含此枚举类型常量的数组。
-
-
-
Enum Constant Detail
-
TOP_LEVEL
public static final NestingKind TOP_LEVEL
顶级类型,不包含在其他类型中。
-
MEMBER
public static final NestingKind MEMBER
作为另一种类型的命名成员的类型。- See The Java™ Language Specification:
- 8.5会员类型声明
-
LOCAL
public static final NestingKind LOCAL
在类型之外的构造中声明的命名类型。- See The Java™ Language Specification:
- 14.3本地类声明
-
ANONYMOUS
public static final NestingKind ANONYMOUS
没有名字的类型- See The Java™ Language Specification:
- 15.9.5匿名类声明
-
-
方法详细信息
-
values
public static NestingKind[] values()
按照它们声明的顺序返回一个包含此枚举类型常量的数组。 该方法可用于遍历常量如下:for (NestingKind c : NestingKind.values()) System.out.println(c);
- 结果
- 一个包含这个枚举类型的常量的数组,按照它们被声明的顺序
-
valueOf
public static NestingKind valueOf(String name)
以指定的名称返回此类型的枚举常量。 字符串必须完全匹配用于声明此类型的枚举常量的标识符。 (不允许使用外来空白字符。)- 参数
-
name
- 要返回的枚举常量的名称。 - 结果
- 具有指定名称的枚举常数
- 异常
-
IllegalArgumentException
- 如果此枚举类型没有指定名称的常量 -
NullPointerException
- 如果参数为空
-
isNested
public boolean isNested()
- 结果
- 无论常数是否嵌套
- See The Java™ Language Specification:
- 14.3内部类和封闭实例
-
-