public class JClass extends JStructure
| Modifier and Type | Class and Description |
|---|---|
(package private) class |
JClass.JInnerClass |
| Modifier and Type | Field and Description |
|---|---|
private java.util.List<JConstructor> |
_constructors
The list of constructors for this JClass
|
private java.util.Map<java.lang.String,JField> |
_fields
The list of member variables (fields) of this JClass
|
private java.util.List<JClass> |
_innerClasses |
private java.util.List<JMethod> |
_methods
The list of methods of this JClass
|
private JSourceCode |
_staticInitializer
The source code for static initialization
|
private java.lang.String |
_superClass
The superclass for this JClass
|
private java.util.List<java.lang.String> |
sourceCodeEntries |
DEFAULT_HEADER, version| Constructor and Description |
|---|
JClass(java.lang.String name)
Creates a new JClass with the given name
|
| Modifier and Type | Method and Description |
|---|---|
void |
addConstructor(JConstructor constructor)
Adds the given Constructor to this classes list of constructors.
|
void |
addField(JField jField)
Adds the given JField to this JClass
|
void |
addMember(JMember jMember)
Adds the given JMember to this JClass
|
void |
addMethod(JMethod jMethod)
Adds the given JMethod to this JClass
|
void |
addMethod(JMethod jMethod,
boolean importReturnType)
Adds the given JMethod to this JClass
|
void |
addMethods(JMethod[] jMethods)
Adds the given array of JMethods to this JClass
|
void |
addSourceCode(java.lang.String sourceCode) |
JConstructor |
createConstructor()
Creates a new JConstructor and adds it to this
JClass.
|
JConstructor |
createConstructor(JParameter[] params)
Creates a new JConstructor and adds it to this
JClass.
|
JClass |
createInnerClass(java.lang.String localname)
Creates and returns an inner-class for this JClass
|
JConstructor |
getConstructor(int index)
Returns the constructor at the specified index.
|
JConstructor[] |
getConstructors()
Returns the an array of the JConstructors contained within this JClass
|
JField |
getField(java.lang.String name)
Returns the member with the given name, or null if no member
was found with the given name
|
JField[] |
getFields()
Returns an array of all the JFields of this JClass
|
JClass[] |
getInnerClasses()
Returns an array of JClass (the inner classes)
contained within this JClass.
|
JMethod |
getMethod(int index)
Returns the JMethod located at the specified index
|
JMethod |
getMethod(java.lang.String name,
int startIndex)
Returns the first occurrence of the method with the
given name, starting from the specified index.
|
JMethod[] |
getMethods()
Returns an array of all the JMethods of this JClass
|
JSourceCode |
getStaticInitializationCode()
Returns the JSourceCode for the static initializer
of this JClass
|
java.lang.String |
getSuperClass()
Gets the super Class that this class extends
|
void |
print(JSourceWriter jsw)
Prints the source code for this JClass to the given JSourceWriter
|
void |
print(JSourceWriter jsw,
boolean classOnly)
Prints the source code for this JClass to the given JSourceWriter
|
boolean |
removeConstructor(JConstructor constructor)
Removes the given constructor from this JClass
|
boolean |
removeField(JField jField)
Removes the given JField from this JClass
|
JField |
removeField(java.lang.String name)
Removes the field with the given name from this JClass
|
boolean |
removeInnerClass(JClass jClass)
Removes the given inner-class (JClass) from this JClass.
|
void |
setSuperClass(java.lang.String superClass)
Sets the super Class that this class extends
|
addImport, addInterface, addInterface, appendAnnotation, getAnnotations, getFilename, getHeader, getImports, getInterfaceCount, getInterfaces, getJDocComment, getModifiers, getName, getPackageFromClassName, getPackageName, hasImport, isAbstract, isValidClassName, print, print, printHeader, printImportDeclarations, printlnWithPrefix, printPackageDeclaration, removeImport, setAnnotations, setHeader, setPackageNamechangePackage, createArray, getComponentType, getLocalName, getName, isArray, isPrimitive, toStringprivate java.util.List<JConstructor> _constructors
private java.util.Map<java.lang.String,JField> _fields
private java.util.List<JClass> _innerClasses
private java.util.List<JMethod> _methods
private java.lang.String _superClass
private JSourceCode _staticInitializer
private java.util.List<java.lang.String> sourceCodeEntries
public JClass(java.lang.String name)
throws java.lang.IllegalArgumentException
name - the name of the JClass to createjava.lang.IllegalArgumentException - when the given name
is not a valid Class namepublic void addConstructor(JConstructor constructor) throws java.lang.IllegalArgumentException
constructor - a constructorjava.lang.IllegalArgumentException - if constructor is null or invalid.public void addField(JField jField) throws java.lang.IllegalArgumentException
addField in class JStructurejField, - the JField to addjava.lang.IllegalArgumentException - when the given
JField has a name of an existing JFieldpublic void addMember(JMember jMember) throws java.lang.IllegalArgumentException
addMember in class JStructurejMember, - the JMember to addjava.lang.IllegalArgumentException - when the given
JMember has the same name of an existing JField
or JMethod respectively, or if the JMember is of an
unrecognized class.public void addMethod(JMethod jMethod)
jMethod - the JMethod to addpublic void addMethod(JMethod jMethod, boolean importReturnType) throws java.lang.IllegalArgumentException
jMethod, - the JMethod to addimportReturnType - true if we add the importReturnType to
the class import lists. It could be useful to set it to false when
all types are fully qualified.java.lang.IllegalArgumentException - when the given
JMethod has the same name of an existing JMethod.public void addMethods(JMethod[] jMethods) throws java.lang.IllegalArgumentException
jMethods, - the JMethod[] to addjava.lang.IllegalArgumentException - when any of the given
JMethods has the same name of an existing JMethod.public JConstructor createConstructor()
public JConstructor createConstructor(JParameter[] params)
params - the parameterspublic JClass createInnerClass(java.lang.String localname)
localname - the name of the class (no package name)public JConstructor getConstructor(int index)
index - the index of the constructor to returnpublic JConstructor[] getConstructors()
public JField getField(java.lang.String name)
getField in class JStructurename - the name of the member to returnpublic JField[] getFields()
getFields in class JStructurepublic JClass[] getInnerClasses()
public JMethod[] getMethods()
public JMethod getMethod(java.lang.String name, int startIndex)
name - the name of the method to look forstartIndex - the starting index to begin the searchpublic JMethod getMethod(int index)
index - the index of the JMethod to return.public JSourceCode getStaticInitializationCode()
public java.lang.String getSuperClass()
public void print(JSourceWriter jsw)
print in class JStructurejsw - the JSourceWriter to print to. [May not be null]public void print(JSourceWriter jsw, boolean classOnly)
jsw - the JSourceWriter to print to. [May not be null]classOnly - whether the header, package and imports should be printed toopublic void addSourceCode(java.lang.String sourceCode)
public boolean removeConstructor(JConstructor constructor)
constructor - the JConstructor to removepublic JField removeField(java.lang.String name)
name - the name of the field to removepublic boolean removeField(JField jField)
jField, - the JField to removetrue if and only if the field was successfully removedpublic boolean removeInnerClass(JClass jClass)
jClass - the JClass (inner-class) to remove.public void setSuperClass(java.lang.String superClass)
superClass - the super Class that this Class extends