public class DefaultJavaClass extends AbstractInheritableJavaEntity implements JavaClass
| Modifier | Constructor and Description |
|---|---|
protected |
DefaultJavaClass() |
|
DefaultJavaClass(JavaSource source) |
|
DefaultJavaClass(java.lang.String name) |
| Modifier and Type | Method and Description |
|---|---|
void |
addClass(JavaClass cls) |
void |
addConstructor(JavaConstructor constructor) |
void |
addField(JavaField javaField) |
void |
addInitializer(JavaInitializer initializer) |
void |
addMethod(JavaMethod meth) |
boolean |
equals(java.lang.Object obj) |
java.util.List<BeanProperty> |
getBeanProperties()
Gets bean properties without looking in superclasses or interfaces.
|
java.util.List<BeanProperty> |
getBeanProperties(boolean superclasses) |
BeanProperty |
getBeanProperty(java.lang.String propertyName)
Gets bean property without looking in superclasses or interfaces.
|
BeanProperty |
getBeanProperty(java.lang.String propertyName,
boolean superclasses) |
java.lang.String |
getBinaryName()
The class or interface must be named by its binary name, which must meet the following constraints:
The binary name of a top level type is its canonical name.
|
java.lang.String |
getCanonicalName()
Equivalent of (@link
Class.getCanonicalName(). |
java.lang.String |
getCodeBlock() |
JavaClass |
getComponentType()
Equivalent of
Class.getComponentType()
If this type is an array, return its component type |
JavaConstructor |
getConstructor(java.util.List<JavaType> parameterTypes) |
JavaConstructor |
getConstructor(java.util.List<JavaType> parameterTypes,
boolean varArgs) |
java.util.List<JavaConstructor> |
getConstructors()
Equivalent of
Class.getConstructors() |
java.util.List<JavaClass> |
getDerivedClasses()
Equivalent of
Class.getClasses()
Gets the known derived classes. |
int |
getDimensions()
Returns the depth of this array, 0 if it's not an array
|
JavaField |
getEnumConstantByName(java.lang.String name) |
java.util.List<JavaField> |
getEnumConstants()
Based on
Class.getEnumConstants(). |
JavaField |
getFieldByName(java.lang.String name)
Equivalent of
Class.getField(String), where this method can resolve every field |
java.util.List<JavaField> |
getFields()
Equivalent of
Class.getFields() |
java.lang.String |
getFullyQualifiedName()
Every primitive type, named package, top level class, and top level interface has a fully qualified name:
The fully qualified name of a primitive type is the keyword for that primitive type, namely byte, short, char, int, long, float, double, or boolean.
|
java.lang.String |
getGenericCanonicalName()
The canonical name with generic information.
|
java.lang.String |
getGenericFullyQualifiedName()
The fully qualified name with generic information.
|
java.lang.String |
getGenericValue()
A java5+ representation of the class.
|
java.util.List<JavaType> |
getImplements() |
java.util.List<JavaInitializer> |
getInitializers()
A list if
JavaInitializer, either static or instance initializers. |
java.util.List<JavaClass> |
getInterfaces()
Equivalent of
Class.getInterfaces()
Determines the interfaces implemented by the class or interface represented by this object. |
ClassLibrary |
getJavaClassLibrary() |
JavaMethod |
getMethod(java.lang.String name,
java.util.List<JavaType> parameterTypes,
boolean varArgs)
This should be the signature for getMethodBySignature.
|
JavaMethod |
getMethodBySignature(java.lang.String name,
java.util.List<JavaType> parameterTypes) |
JavaMethod |
getMethodBySignature(java.lang.String name,
java.util.List<JavaType> parameterTypes,
boolean superclasses) |
JavaMethod |
getMethodBySignature(java.lang.String name,
java.util.List<JavaType> parameterTypes,
boolean superclasses,
boolean varArg) |
java.util.List<JavaMethod> |
getMethods()
Equivalent of
Class.getMethods() |
java.util.List<JavaMethod> |
getMethods(boolean superclasses)
Return declared methods and optionally the inherited methods
|
java.util.List<JavaMethod> |
getMethodsBySignature(java.lang.String name,
java.util.List<JavaType> parameterTypes,
boolean superclasses) |
java.util.List<JavaMethod> |
getMethodsBySignature(java.lang.String name,
java.util.List<JavaType> parameterTypes,
boolean superclasses,
boolean varArg) |
JavaClass |
getNestedClassByName(java.lang.String name) |
java.util.List<JavaClass> |
getNestedClasses()
Equivalent of
Class.getDeclaredClasses() |
JavaPackage |
getPackage()
Equivalent of
Class.getPackage() |
java.lang.String |
getPackageName()
If this class has a package, the packagename will be returned.
|
JavaSource |
getParentSource() |
java.lang.String |
getSimpleName()
Equivalent of
Class.getSimpleName(). |
JavaSource |
getSource()
The compilation unit, which includes the imports, the public and anonymous classes
|
JavaType |
getSuperClass() |
JavaClass |
getSuperJavaClass()
Shorthand for getSuperClass().getJavaClass() with null checking.
|
java.util.List<DocletTag> |
getTagsByName(java.lang.String name,
boolean superclasses) |
java.util.List<DefaultJavaTypeVariable<JavaClass>> |
getTypeParameters()
Equivalent of
GenericDeclaration.getTypeParameters() |
java.lang.String |
getValue()
If there's a reference to this class, use the value used in the code.
|
int |
hashCode() |
boolean |
isA(JavaClass javaClass) |
boolean |
isA(java.lang.String fullClassName) |
boolean |
isAnnotation()
(API description of
Class.isAnnotation())
Returns true if this Class object represents an annotation type. |
boolean |
isArray() |
boolean |
isEnum()
(API description of
Class.isEnum())
Returns true if and only if this class was declared as an enum in the source code. |
boolean |
isInner() |
boolean |
isInterface()
(API description of
Class.isInterface())
Determines if the specified Class object represents an interface type. |
boolean |
isPrimitive()
Equivalent of
Class.isPrimitive() |
boolean |
isVoid() |
void |
setAnnotation(boolean anAnnotation) |
void |
setEnum(boolean anEnum) |
void |
setImplementz(java.util.List<JavaClass> implementz) |
void |
setInterface(boolean anInterface) |
void |
setJavaPackage(JavaPackage javaPackage)
Only used when constructing the model by hand / without source
|
void |
setSuperClass(JavaType type) |
void |
setTypeParameters(java.util.List<DefaultJavaTypeVariable<JavaClass>> typeParameters) |
java.lang.String |
toGenericString() |
java.lang.String |
toString()
(API description of
Class.toString())
Converts the object to a string. |
getTagByNamegetDeclaringClass, getModifiers, getName, isAbstract, isFinal, isNative, isPrivate, isProtected, isPublic, isStatic, isStrictfp, isSynchronized, isTransient, isVolatile, setDeclaringClass, setModifiers, setNamegetAnnotations, getComment, getNamedParameter, getTagByName, getTags, getTagsByName, setAnnotations, setComment, setSource, setTagsgetLineNumber, getModelWriter, setLineNumber, setModelWriterFactoryclone, finalize, getClass, notify, notifyAll, wait, wait, waitgetDeclaringClass, getModifiers, getName, isAbstract, isFinal, isPrivate, isProtected, isPublic, isStaticgetAnnotations, getComment, getNamedParameter, getTagByName, getTags, getTagsByNamegetLineNumberprotected DefaultJavaClass()
public DefaultJavaClass(java.lang.String name)
public DefaultJavaClass(JavaSource source)
public boolean isInterface()
Class.isInterface())
Determines if the specified Class object represents an interface type.
isInterface in interface JavaClasstrue if this object represents an interface, otherwise falsepublic boolean isPrimitive()
Class.isPrimitive()isPrimitive in interface JavaClasstrue if this class represents a primitive, otherwise falsepublic boolean isVoid()
public boolean isEnum()
Class.isEnum())
Returns true if and only if this class was declared as an enum in the source code.
public boolean isAnnotation()
Class.isAnnotation())
Returns true if this Class object represents an annotation type.
Note that if this method returns true, JavaClass.isInterface() would also return true, as all annotation types are also interfaces.
isAnnotation in interface JavaClasstrue if this object represents an annotation, otherwise falsepublic boolean isArray()
public JavaClass getComponentType()
Class.getComponentType()
If this type is an array, return its component typegetComponentType in interface JavaClassnullpublic int getDimensions()
getDimensions in interface JavaClass0public JavaType getSuperClass()
getSuperClass in interface JavaClasspublic JavaClass getSuperJavaClass()
getSuperJavaClass in interface JavaClassJavaClasspublic java.util.List<JavaType> getImplements()
getImplements in interface JavaClasspublic java.util.List<JavaClass> getInterfaces()
Class.getInterfaces()
Determines the interfaces implemented by the class or interface represented by this object.getInterfaces in interface JavaClassnullpublic java.lang.String getCodeBlock()
getCodeBlock in interface JavaClassgetCodeBlock in interface JavaModelpublic void setInterface(boolean anInterface)
public void setEnum(boolean anEnum)
public void setAnnotation(boolean anAnnotation)
public void addConstructor(JavaConstructor constructor)
public void addMethod(JavaMethod meth)
public void setSuperClass(JavaType type)
public void setImplementz(java.util.List<JavaClass> implementz)
public java.util.List<DefaultJavaTypeVariable<JavaClass>> getTypeParameters()
GenericDeclaration.getTypeParameters()getTypeParameters in interface JavaGenericDeclarationnullpublic void setTypeParameters(java.util.List<DefaultJavaTypeVariable<JavaClass>> typeParameters)
public void addField(JavaField javaField)
public void setJavaPackage(JavaPackage javaPackage)
javaPackage - the packagepublic JavaSource getParentSource()
getParentSource in interface JavaClasspublic JavaSource getSource()
getSource in interface JavaClassgetSource in class AbstractBaseJavaEntityJavaSource of this elementpublic JavaPackage getPackage()
Class.getPackage()getPackage in interface JavaClasspublic java.lang.String getPackageName()
getPackageName in interface JavaClasspublic java.lang.String getSimpleName()
Class.getSimpleName().getSimpleName in interface JavaClasspublic java.lang.String getBinaryName()
The class or interface must be named by its binary name, which must meet the following constraints:
- The binary name of a top level type is its canonical name.
- The binary name of a member type consists of the binary name of its immediately enclosing type, followed by $, followed by the simple name of the member.
getBinaryName in interface JavaTypepublic java.lang.String getFullyQualifiedName()
Every primitive type, named package, top level class, and top level interface has a fully qualified name:Some examples how names will be translatedEach member class, member interface, and array type may have a fully qualified name:
- The fully qualified name of a primitive type is the keyword for that primitive type, namely byte, short, char, int, long, float, double, or boolean.
- The fully qualified name of a named package that is not a subpackage of a named package is its simple name.
- The fully qualified name of a named package that is a subpackage of another named package consists of the fully qualified name of the containing package, followed by ".", followed by the simple (member) name of the subpackage.
- The fully qualified name of a top level class or top level interface that is declared in an unnamed package is the simple name of the class or interface.
- The fully qualified name of a top level class or top level interface that is declared in a named package consists of the fully qualified name of the package, followed by ".", followed by the simple name of the class or interface.
- A member class or member interface M of another class or interface C has a fully qualified name if and only if C has a fully qualified name.
- In that case, the fully qualified name of M consists of the fully qualified name of C, followed by ".", followed by the simple name of M.
- An array type has a fully qualified name if and only if its element type has a fully qualified name.
- In that case, the fully qualified name of an array type consists of the fully qualified name of the component type of the array type followed by "[]".
Object > java.lang.Object java.util.List > java.util.List ? > ? T > T anypackage.Outer.Inner > anypackage.Outer.Inner String[][] > java.lang.String[][]
getFullyQualifiedName in interface JavaTypenullJavaClass.getComponentType(),
JavaType.getBinaryName(),
https://docs.oracle.com/javase/specs/jls/se8/html/jls-6.html#jls-6.7public java.lang.String getGenericFullyQualifiedName()
getGenericFullyQualifiedName in interface JavaTypepublic java.lang.String getCanonicalName()
Class.getCanonicalName().getCanonicalName in interface JavaTypepublic java.lang.String getGenericCanonicalName()
getGenericCanonicalName in interface JavaTypepublic java.lang.String getValue()
private String fieldA; // getValue() will return "String" private java.lang.String fieldA; // getValue() will return "java.lang.String" private List>String> aList; // getValue() will return "List"
public java.lang.String getGenericValue()
private String fieldA; // getValue() will return "String" private java.lang.String fieldA; // getValue() will return "java.lang.String" private List>String> aList; // getValue() will return "List>String>"
getGenericValue in interface JavaTypepublic boolean isInner()
public java.util.List<JavaInitializer> getInitializers()
JavaInitializer, either static or instance initializers.getInitializers in interface JavaClasspublic java.util.List<JavaConstructor> getConstructors()
Class.getConstructors()getConstructors in interface JavaClasspublic JavaConstructor getConstructor(java.util.List<JavaType> parameterTypes)
getConstructor in interface JavaClassparameterTypes - the parameter types of the constructor, can be nullnullpublic JavaConstructor getConstructor(java.util.List<JavaType> parameterTypes, boolean varArgs)
getConstructor in interface JavaClassparameterTypes - the parameter types of the constructor, can be nullvarArgs - define is the constructor has varArgsnullpublic java.util.List<JavaMethod> getMethods()
Class.getMethods()getMethods in interface JavaClasspublic java.util.List<JavaMethod> getMethods(boolean superclasses)
getMethods in interface JavaClasssuperclasses - true if inherited methods should be returned as wellpublic JavaMethod getMethodBySignature(java.lang.String name, java.util.List<JavaType> parameterTypes)
getMethodBySignature in interface JavaClassname - the name of the methodparameterTypes - the parameter types of the method, can be null.nullpublic JavaMethod getMethod(java.lang.String name, java.util.List<JavaType> parameterTypes, boolean varArgs)
public JavaMethod getMethodBySignature(java.lang.String name, java.util.List<JavaType> parameterTypes, boolean superclasses)
getMethodBySignature in interface JavaClassname - the name of the methodparameterTypes - the parameter types of the method, can be nullsuperclasses - to define if superclasses should be included as wellnullpublic JavaMethod getMethodBySignature(java.lang.String name, java.util.List<JavaType> parameterTypes, boolean superclasses, boolean varArg)
getMethodBySignature in interface JavaClassname - the name of the methodparameterTypes - the parameter types of the method, can be nullsuperclasses - true if inherited methods should be matched as wellvarArg - define if the method has varArgsnullpublic java.util.List<JavaMethod> getMethodsBySignature(java.lang.String name, java.util.List<JavaType> parameterTypes, boolean superclasses)
getMethodsBySignature in interface JavaClassname - the name of the methodparameterTypes - the parameter types of the method, can be nullsuperclasses - true if inherited methods should be matched as wellnullpublic java.util.List<JavaMethod> getMethodsBySignature(java.lang.String name, java.util.List<JavaType> parameterTypes, boolean superclasses, boolean varArg)
getMethodsBySignature in interface JavaClassname - the name of the methodparameterTypes - the parameter types of the method, can be nullsuperclasses - true if inherited methods should be matched as wellvarArg - define if the method has varArgsnullpublic java.util.List<JavaField> getFields()
Class.getFields()public JavaField getFieldByName(java.lang.String name)
Class.getField(String), where this method can resolve every fieldgetFieldByName in interface JavaClassname - the name of the fieldpublic java.util.List<JavaField> getEnumConstants()
Class.getEnumConstants().getEnumConstants in interface JavaClassenum, otherwise nullpublic JavaField getEnumConstantByName(java.lang.String name)
getEnumConstantByName in interface JavaClassname - the name of the enum constantname, otherwise nullpublic void addInitializer(JavaInitializer initializer)
public void addClass(JavaClass cls)
public java.util.List<JavaClass> getNestedClasses()
Class.getDeclaredClasses()getNestedClasses in interface JavaClassnullpublic JavaClass getNestedClassByName(java.lang.String name)
getNestedClassByName in interface JavaClasspublic boolean isA(java.lang.String fullClassName)
public boolean isA(JavaClass javaClass)
public java.util.List<BeanProperty> getBeanProperties()
getBeanProperties in interface JavaClasspublic java.util.List<BeanProperty> getBeanProperties(boolean superclasses)
getBeanProperties in interface JavaClasssuperclasses - to define if superclasses should be included as wellpublic BeanProperty getBeanProperty(java.lang.String propertyName)
getBeanProperty in interface JavaClasspropertyName - the name of the propertypublic BeanProperty getBeanProperty(java.lang.String propertyName, boolean superclasses)
getBeanProperty in interface JavaClasspropertyName - the name of the propertysuperclasses - to define if superclasses should be included as wellpublic java.util.List<JavaClass> getDerivedClasses()
Class.getClasses()
Gets the known derived classes. That is, subclasses or implementing classes.getDerivedClasses in interface JavaClasspublic java.util.List<DocletTag> getTagsByName(java.lang.String name, boolean superclasses)
getTagsByName in interface JavaClassgetTagsByName in class AbstractInheritableJavaEntitypublic java.lang.String toString()
JavaClassClass.toString())
Converts the object to a string.
The string representation is the string "class" or "interface", followed by a space, and then by the fully qualified name of the class in the format returned by getName.
If this Class object represents a primitive type, this method returns the name of the primitive type.
If this Class object represents void this method returns "void".public java.lang.String toGenericString()
toGenericString in interface JavaTypepublic int hashCode()
hashCode in class java.lang.Objectpublic boolean equals(java.lang.Object obj)
equals in class java.lang.Objectpublic ClassLibrary getJavaClassLibrary()
getJavaClassLibrary in interface JavaClassCopyright © 2002-2018. All Rights Reserved.