Package org.springframework.core.type
Interface ClassMetadata
- All Known Subinterfaces:
AnnotationMetadata
- All Known Implementing Classes:
AnnotationMetadataReadingVisitor
,StandardAnnotationMetadata
,StandardClassMetadata
public interface ClassMetadata
Interface that defines abstract metadata of a specific class, in a form that does not require that class to be loaded yet.- Since:
- 2.5
- Author:
- Juergen Hoeller
- See Also:
StandardClassMetadata
,MetadataReader.getClassMetadata()
,AnnotationMetadata
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description String
getClassName()
Return the name of the underlying class.String
getEnclosingClassName()
Return the name of the enclosing class of the underlying class, ornull
if the underlying class is a top-level class.String[]
getInterfaceNames()
Return the names of all interfaces that the underlying class implements, or an empty array if there are none.String[]
getMemberClassNames()
Return the names of all classes declared as members of the class represented by this ClassMetadata object.String
getSuperClassName()
Return the name of the super class of the underlying class, ornull
if there is no super class defined.boolean
hasEnclosingClass()
Return whether the underlying class is declared within an enclosing class (i.e.boolean
hasSuperClass()
Return whether the underlying class has a super class.boolean
isAbstract()
Return whether the underlying class is marked as abstract.boolean
isAnnotation()
Return whether the underlying class represents an annotation.boolean
isConcrete()
Return whether the underlying class represents a concrete class, i.e.boolean
isFinal()
Return whether the underlying class is marked as 'final'.boolean
isIndependent()
Determine whether the underlying class is independent, i.e.boolean
isInterface()
Return whether the underlying class represents an interface.
Method Detail
getClassName
String getClassName()
Return the name of the underlying class.
isInterface
boolean isInterface()
Return whether the underlying class represents an interface.
isAnnotation
boolean isAnnotation()
Return whether the underlying class represents an annotation.- Since:
- 4.1
isAbstract
boolean isAbstract()
Return whether the underlying class is marked as abstract.
isConcrete
boolean isConcrete()
Return whether the underlying class represents a concrete class, i.e. neither an interface nor an abstract class.
isFinal
boolean isFinal()
Return whether the underlying class is marked as 'final'.
isIndependent
boolean isIndependent()
Determine whether the underlying class is independent, i.e. whether it is a top-level class or a nested class (static inner class) that can be constructed independently from an enclosing class.
hasEnclosingClass
boolean hasEnclosingClass()
Return whether the underlying class is declared within an enclosing class (i.e. the underlying class is an inner/nested class or a local class within a method).If this method returns
false
, then the underlying class is a top-level class.
getEnclosingClassName
String getEnclosingClassName()
Return the name of the enclosing class of the underlying class, ornull
if the underlying class is a top-level class.
hasSuperClass
boolean hasSuperClass()
Return whether the underlying class has a super class.
getSuperClassName
String getSuperClassName()
Return the name of the super class of the underlying class, ornull
if there is no super class defined.
getInterfaceNames
String[] getInterfaceNames()
Return the names of all interfaces that the underlying class implements, or an empty array if there are none.
getMemberClassNames
String[] getMemberClassNames()
Return the names of all classes declared as members of the class represented by this ClassMetadata object. This includes public, protected, default (package) access, and private classes and interfaces declared by the class, but excludes inherited classes and interfaces. An empty array is returned if no member classes or interfaces exist.- Since:
- 3.1