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(); }
Enum Constant and Description |
---|
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.
|
Modifier and Type | Method and Description |
---|---|
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)
Returns the enum constant of this type with the specified name.
|
static NestingKind[] |
values()
Returns an array containing the constants of this enum type, in
the order they are declared.
|
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
- the name of the enum constant to be returned.IllegalArgumentException
- if this enum type has no constant with the specified nameNullPointerException
- if the argument is nullpublic boolean isNested()
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2023, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.