public class GenericClass extends java.lang.Object implements ReflectClass, DeepClone
| Modifier and Type | Field and Description |
|---|---|
protected GenericConverter |
_converter |
| Constructor and Description |
|---|
GenericClass(GenericReflector reflector,
ReflectClass delegateClass,
java.lang.String name,
GenericClass superclass) |
| Modifier and Type | Method and Description |
|---|---|
GenericClass |
arrayClass() |
java.lang.Object |
deepClone(java.lang.Object obj)
The parameter allows passing one new object so parent
references can be corrected on children.
|
boolean |
ensureCanBeInstantiated()
Calling this method may change the internal state of the class, even if a usable
constructor has been found on earlier invocations.
|
boolean |
equals(java.lang.Object obj) |
ReflectClass |
getComponentType() |
ReflectField |
getDeclaredField(java.lang.String name) |
ReflectField[] |
getDeclaredFields() |
ReflectClass |
getDelegate()
Returns the ReflectClass instance being delegated to.
|
ReflectMethod |
getMethod(java.lang.String methodName,
ReflectClass[] paramClasses) |
java.lang.String |
getName() |
ReflectClass |
getSuperclass() |
int |
hashCode() |
void |
initFields(GenericField[] fields) |
boolean |
isAbstract() |
boolean |
isArray() |
boolean |
isAssignableFrom(ReflectClass subclassCandidate) |
boolean |
isCollection() |
boolean |
isImmutable()
We need this for replication, to find out if a class needs to be traversed
or if it simply can be copied across.
|
boolean |
isInstance(java.lang.Object candidate) |
boolean |
isInterface() |
boolean |
isPrimitive() |
java.lang.Object |
newInstance() |
java.lang.Object |
nullValue() |
Reflector |
reflector() |
java.lang.String |
toString() |
java.lang.String |
toString(java.lang.Object obj) |
protected GenericConverter _converter
public GenericClass(GenericReflector reflector, ReflectClass delegateClass, java.lang.String name, GenericClass superclass)
public GenericClass arrayClass()
public java.lang.Object deepClone(java.lang.Object obj)
DeepClonepublic boolean equals(java.lang.Object obj)
equals in class java.lang.Objectpublic ReflectClass getComponentType()
getComponentType in interface ReflectClasspublic ReflectField getDeclaredField(java.lang.String name)
getDeclaredField in interface ReflectClasspublic ReflectField[] getDeclaredFields()
getDeclaredFields in interface ReflectClasspublic ReflectClass getDelegate()
ReflectClassgetDelegate in interface ReflectClasspublic ReflectMethod getMethod(java.lang.String methodName, ReflectClass[] paramClasses)
getMethod in interface ReflectClasspublic java.lang.String getName()
getName in interface ReflectClasspublic ReflectClass getSuperclass()
getSuperclass in interface ReflectClasspublic int hashCode()
hashCode in class java.lang.Objectpublic void initFields(GenericField[] fields)
public boolean isAbstract()
isAbstract in interface ReflectClasspublic boolean isArray()
isArray in interface ReflectClasspublic boolean isAssignableFrom(ReflectClass subclassCandidate)
isAssignableFrom in interface ReflectClasspublic boolean isCollection()
isCollection in interface ReflectClasspublic boolean isInstance(java.lang.Object candidate)
isInstance in interface ReflectClasspublic boolean isInterface()
isInterface in interface ReflectClasspublic boolean isPrimitive()
isPrimitive in interface ReflectClasspublic java.lang.Object newInstance()
newInstance in interface ReflectClasspublic Reflector reflector()
reflector in interface ReflectClasspublic java.lang.String toString()
toString in class java.lang.Objectpublic java.lang.String toString(java.lang.Object obj)
public boolean ensureCanBeInstantiated()
ReflectClassensureCanBeInstantiated in interface ReflectClasspublic java.lang.Object nullValue()
nullValue in interface ReflectClasspublic boolean isImmutable()
ReflectClassReflectClass.isPrimitive() and Platform4.isSimple(Class)
We can think about letting users add an Immutable annotation.isImmutable in interface ReflectClass