public class DefaultJavaClass extends AbstractInheritableJavaEntity implements JavaClass
Modifier | Constructor and Description |
---|---|
protected |
DefaultJavaClass() |
|
DefaultJavaClass(JavaSource source) |
|
DefaultJavaClass(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) |
JavaType |
asType() |
boolean |
equals(Object obj) |
List<BeanProperty> |
getBeanProperties()
Gets bean properties without looking in superclasses or interfaces.
|
List<BeanProperty> |
getBeanProperties(boolean superclasses) |
BeanProperty |
getBeanProperty(String propertyName)
Gets bean property without looking in superclasses or interfaces.
|
BeanProperty |
getBeanProperty(String propertyName,
boolean superclasses) |
String |
getCanonicalName()
Equivalent of (@link
Class.getCanonicalName() . |
List<JavaClass> |
getClasses()
Deprecated.
Use
getNestedClasses() instead. |
String |
getClassNamePrefix()
If this class has a package, it will return the package name, followed by a "."(dot).
|
String |
getCodeBlock() |
JavaClass |
getComponentType()
Equivalent of
Class.getComponentType()
If this type is an array, return its component type |
JavaConstructor |
getConstructor(List<JavaType> parameterTypes) |
JavaConstructor |
getConstructor(List<JavaType> parameterTypes,
boolean varArgs) |
List<JavaConstructor> |
getConstructors()
Equivalent of
Class.getConstructors() |
JavaClass |
getDeclaringClass() |
List<JavaClass> |
getDerivedClasses()
Equivalent of
Class.getClasses()
Gets the known derived classes. |
int |
getDimensions() |
JavaField |
getEnumConstantByName(String name) |
List<JavaField> |
getEnumConstants()
Based on
Class.getEnumConstants() . |
JavaField |
getFieldByName(String name)
Equivalent of
Class.getField(String) , where this method can resolve every field |
List<JavaField> |
getFields()
Equivalent of
Class.getFields() |
String |
getFullyQualifiedName()
Returns the FQN of an Object or the handler of a Type.
|
String |
getGenericCanonicalName()
The canonical name with generic information.
|
String |
getGenericFullyQualifiedName()
The fully qualified nate with generic information.
|
String |
getGenericValue()
A java5+ representation of the class.
|
List<JavaClass> |
getImplementedInterfaces() |
List<JavaType> |
getImplements() |
List<JavaInitializer> |
getInitializers()
A list if
JavaInitializer , either static or instance initializers. |
JavaClass |
getInnerClassByName(String name) |
List<JavaClass> |
getInnerClasses() |
List<JavaClass> |
getInterfaces()
Equivalent of
Class.getInterfaces()
Determines the interfaces implemented by the class or interface represented by this object. |
ClassLibrary |
getJavaClassLibrary() |
JavaMethod |
getMethod(String name,
List<JavaType> parameterTypes,
boolean varArgs)
This should be the signature for getMethodBySignature.
|
JavaMethod |
getMethodBySignature(String name,
List<JavaType> parameterTypes) |
JavaMethod |
getMethodBySignature(String name,
List<JavaType> parameterTypes,
boolean superclasses) |
JavaMethod |
getMethodBySignature(String name,
List<JavaType> parameterTypes,
boolean superclasses,
boolean varArg) |
List<JavaMethod> |
getMethods()
Equivalent of
Class.getMethods() |
List<JavaMethod> |
getMethods(boolean superclasses) |
List<JavaMethod> |
getMethodsBySignature(String name,
List<JavaType> parameterTypes,
boolean superclasses) |
List<JavaMethod> |
getMethodsBySignature(String name,
List<JavaType> parameterTypes,
boolean superclasses,
boolean varArg) |
JavaClass |
getNestedClassByName(String name) |
List<JavaClass> |
getNestedClasses()
Equivalent of
Class.getDeclaredClasses() |
JavaPackage |
getPackage()
Equivalent of
Class.getPackage() |
String |
getPackageName()
If this class has a package, the packagename will be returned.
|
JavaClassParent |
getParent() |
JavaSource |
getParentSource() |
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.
|
List<DocletTag> |
getTagsByName(String name,
boolean superclasses) |
List<DefaultJavaTypeVariable<JavaClass>> |
getTypeParameters()
Equivalent of
GenericDeclaration.getTypeParameters() |
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(String fullClassName) |
boolean |
isAnnotation()
(API description of
Class.isAnnotation() ) |
boolean |
isArray() |
boolean |
isEnum()
(API description of
Class.isEnum() ) |
boolean |
isInner() |
boolean |
isInterface()
(API description of
Class.isInterface() ) |
boolean |
isPrimitive()
Equivalent of
Class.isPrimitive() |
boolean |
isVoid() |
String |
resolveCanonicalName(String name)
The name can be both absolute (including the package) or relative (matching a subclass or an import).
|
String |
resolveFullyQualifiedName(String name)
The name can be both absolute (including the package) or relative (matching a subclass or an import).
|
String |
resolveType(String typeName)
Resolve a type-name within the context of this source or class.
|
void |
setAnnotation(boolean anAnnotation) |
void |
setEnum(boolean anEnum) |
void |
setImplementz(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(List<DefaultJavaTypeVariable<JavaClass>> typeParameters) |
String |
toGenericString() |
String |
toString()
(API description of
Class.toString() )
Converts the object to a string. |
getTagByName
getModifiers, getName, getParentClass, isAbstract, isFinal, isNative, isPrivate, isProtected, isPublic, isStatic, isStrictfp, isSynchronized, isTransient, isVolatile, setModifiers, setName, setParentClass
getAnnotations, getComment, getNamedParameter, getTagByName, getTags, getTagsByName, setAnnotations, setComment, setTags
getLineNumber, getModelWriter, setLineNumber, setModelWriterFactory, setSource
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
getModifiers, getName, isAbstract, isFinal, isPrivate, isProtected, isPublic, isStatic
getLineNumber
getAnnotations, getComment, getNamedParameter, getTagByName, getTags, getTagsByName
protected DefaultJavaClass()
public DefaultJavaClass(String name)
public DefaultJavaClass(JavaSource source)
public boolean isInterface()
Class.isInterface()
)
Determines if the specified Class
object represents an interface type.
isInterface
in interface JavaClass
true
if this object represents an interface, otherwise false
public boolean isPrimitive()
Class.isPrimitive()
isPrimitive
in interface JavaClass
true
if this class represents a primitive, otherwise false
public 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 JavaClass
true
if this object represents an annotation, otherwise false
public boolean isArray()
public JavaClass getComponentType()
Class.getComponentType()
If this type is an array, return its component typegetComponentType
in interface JavaClass
null
public int getDimensions()
getDimensions
in interface JavaClass
public JavaType getSuperClass()
getSuperClass
in interface JavaClass
public JavaClass getSuperJavaClass()
getSuperJavaClass
in interface JavaClass
public List<JavaType> getImplements()
getImplements
in interface JavaClass
public List<JavaClass> getImplementedInterfaces()
getImplementedInterfaces
in interface JavaClass
public List<JavaClass> getInterfaces()
Class.getInterfaces()
Determines the interfaces implemented by the class or interface represented by this object. *getInterfaces
in interface JavaClass
null
public String getCodeBlock()
getCodeBlock
in interface JavaClass
getCodeBlock
in interface JavaModel
public 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 List<DefaultJavaTypeVariable<JavaClass>> getTypeParameters()
GenericDeclaration.getTypeParameters()
getTypeParameters
in interface JavaGenericDeclaration
null
public void setTypeParameters(List<DefaultJavaTypeVariable<JavaClass>> typeParameters)
public void addField(JavaField javaField)
public void setJavaPackage(JavaPackage javaPackage)
javaPackage
- public JavaSource getParentSource()
getParentSource
in interface JavaClassParent
getParentSource
in interface JavaClass
public JavaSource getSource()
getSource
in interface JavaModel
getSource
in class AbstractJavaModel
JavaSource
of this elementpublic JavaPackage getPackage()
Class.getPackage()
getPackage
in interface JavaClass
public JavaClassParent getParent()
public String getPackageName()
getPackageName
in interface JavaClass
public String getFullyQualifiedName()
#getComponentType()
.
Some examples how names will be translated
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 JavaType
null
#getComponentType()
public String getGenericFullyQualifiedName()
getGenericFullyQualifiedName
in interface JavaType
public String getCanonicalName()
Class.getCanonicalName()
.getCanonicalName
in interface JavaType
public String getGenericCanonicalName()
getGenericCanonicalName
in interface JavaType
public String getValue()
private String fieldA; // getValue() will return "String" private java.lang.String fieldA; // getValue() will return "java.lang.String" private ListaList; // getValue() will return "List"
public String getGenericValue()
private String fieldA; // getValue() will return "String" private java.lang.String fieldA; // getValue() will return "java.lang.String" private ListaList; // getValue() will return "List "
getGenericValue
in interface JavaType
public boolean isInner()
public String resolveType(String typeName)
resolveType
in interface JavaClassParent
resolveType
in interface JavaClass
typeName
- name of a typepublic String resolveCanonicalName(String name)
resolveCanonicalName
in interface JavaClassParent
resolveCanonicalName
in interface JavaClass
name
- the name to resolvenull
public String resolveFullyQualifiedName(String name)
resolveFullyQualifiedName
in interface JavaClassParent
resolveFullyQualifiedName
in interface JavaClass
name
- the name to resolvenull
public String getClassNamePrefix()
getClassNamePrefix
in interface JavaClass
public List<JavaInitializer> getInitializers()
JavaInitializer
, either static or instance initializers.getInitializers
in interface JavaClass
public List<JavaConstructor> getConstructors()
Class.getConstructors()
getConstructors
in interface JavaClass
public JavaConstructor getConstructor(List<JavaType> parameterTypes)
getConstructor
in interface JavaClass
parameterTypes
- the parameter types of the constructor, can be null
null
public JavaConstructor getConstructor(List<JavaType> parameterTypes, boolean varArgs)
getConstructor
in interface JavaClass
parameterTypes
- the parameter types of the constructor, can be null
varArgs
- define is the constructor has varArgsnull
public List<JavaMethod> getMethods()
Class.getMethods()
getMethods
in interface JavaClass
public List<JavaMethod> getMethods(boolean superclasses)
getMethods
in interface JavaClass
public JavaMethod getMethodBySignature(String name, List<JavaType> parameterTypes)
getMethodBySignature
in interface JavaClass
name
- the name of the methodparameterTypes
- the parameter types of the method, can be null
.null
public JavaMethod getMethod(String name, List<JavaType> parameterTypes, boolean varArgs)
public JavaMethod getMethodBySignature(String name, List<JavaType> parameterTypes, boolean superclasses)
getMethodBySignature
in interface JavaClass
name
- the name of the methodparameterTypes
- the parameter types of the method, can be null
superclasses
- to define if superclasses should be included as wellnull
public JavaMethod getMethodBySignature(String name, List<JavaType> parameterTypes, boolean superclasses, boolean varArg)
getMethodBySignature
in interface JavaClass
name
- the name of the methodparameterTypes
- the parameter types of the method, can be null
varArg
- define if the method has varArgsnull
public List<JavaMethod> getMethodsBySignature(String name, List<JavaType> parameterTypes, boolean superclasses)
getMethodsBySignature
in interface JavaClass
name
- the name of the methodparameterTypes
- the parameter types of the method, can be null
superclasses
- to define if superclasses should be included as wellnull
public List<JavaMethod> getMethodsBySignature(String name, List<JavaType> parameterTypes, boolean superclasses, boolean varArg)
getMethodsBySignature
in interface JavaClass
name
- the name of the methodparameterTypes
- the parameter types of the method, can be null
superclasses
- to define if superclasses should be included as wellvarArg
- define if the method has varArgsnull
public List<JavaField> getFields()
Class.getFields()
public JavaField getFieldByName(String name)
Class.getField(String)
, where this method can resolve every fieldgetFieldByName
in interface JavaClass
public List<JavaField> getEnumConstants()
Class.getEnumConstants()
.getEnumConstants
in interface JavaClass
enum
, otherwise null
public JavaField getEnumConstantByName(String name)
getEnumConstantByName
in interface JavaClass
name
, otherwise null
public void addInitializer(JavaInitializer initializer)
public void addClass(JavaClass cls)
public List<JavaClass> getClasses()
getNestedClasses()
instead.getClasses
in interface JavaClass
public List<JavaClass> getNestedClasses()
Class.getDeclaredClasses()
getNestedClasses
in interface JavaClass
null
public JavaClass getInnerClassByName(String name)
getInnerClassByName
in interface JavaClass
public List<JavaClass> getInnerClasses()
getInnerClasses
in interface JavaClass
public JavaClass getNestedClassByName(String name)
getNestedClassByName
in interface JavaClassParent
getNestedClassByName
in interface JavaClass
public List<BeanProperty> getBeanProperties()
getBeanProperties
in interface JavaClass
public List<BeanProperty> getBeanProperties(boolean superclasses)
getBeanProperties
in interface JavaClass
superclasses
- to define if superclasses should be included as wellpublic BeanProperty getBeanProperty(String propertyName)
getBeanProperty
in interface JavaClass
propertyName
- the name of the propertypublic BeanProperty getBeanProperty(String propertyName, boolean superclasses)
getBeanProperty
in interface JavaClass
propertyName
- the name of the propertysuperclasses
- to define if superclasses should be included as wellpublic List<JavaClass> getDerivedClasses()
Class.getClasses()
Gets the known derived classes. That is, subclasses or implementing classes.getDerivedClasses
in interface JavaClass
public JavaClass getDeclaringClass()
getDeclaringClass
in interface JavaClass
public List<DocletTag> getTagsByName(String name, boolean superclasses)
getTagsByName
in interface JavaClass
getTagsByName
in class AbstractInheritableJavaEntity
public String toString()
JavaClass
Class.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".toString
in interface JavaClass
toString
in class Object
Class.toString()
public String toGenericString()
toGenericString
in interface JavaType
public ClassLibrary getJavaClassLibrary()
getJavaClassLibrary
in interface JavaClassParent
getJavaClassLibrary
in interface JavaClass
Copyright © 2002–2014. All rights reserved.