Represents either a source type in a compilation unit (either a top-level type, a member type, a local type or an anonymous type) or a binary type in a class file. Enumeration classes and annotation types are subkinds of classes and interfaces, respectively.
Note that the element name of an anonymous source type is always empty.
If a binary type cannot be parsed, its structure remains unknown. Use IJavaElement.isStructureKnown
to determine whether this is the case.
The children are of type IMember
, which includes IField
, IMethod
, IInitializer
and IType
. The children are listed in the order in which they appear in the source or class file.
@noimplement This interface is not intended to be implemented by clients.