public class JavaClass extends ModelClass
Modifier and Type | Method and Description |
---|---|
JavaClass |
box()
When this is a primitive type, such as boolean, this will return the boxed value,
such as Boolean.
|
boolean |
equals(Object obj)
Indicates whether some other object is "equal to" this one.
|
ModelClass |
erasure()
Returns this class type without any generic type arguments.
|
String |
getCanonicalName() |
ModelClass |
getComponentType()
For arrays, lists, and maps, this returns the contained value.
|
protected ModelField[] |
getDeclaredFields() |
protected ModelMethod[] |
getDeclaredMethods() |
String |
getJniDescription()
Returns the JNI description of the method which can be used to lookup it in SDK.
|
ModelClass |
getSuperclass()
If this represents a class, the super class that it extends is returned.
|
List<ModelClass> |
getTypeArguments() |
int |
hashCode()
Returns a hash code value for the object.
|
boolean |
isArray() |
boolean |
isAssignableFrom(ModelClass that)
Returns whether or not the type associated with
that can be assigned to
the type associated with this ModelClass. |
boolean |
isBoolean() |
boolean |
isByte() |
boolean |
isChar() |
boolean |
isDouble() |
boolean |
isFloat() |
boolean |
isGeneric() |
boolean |
isInt() |
boolean |
isInterface() |
boolean |
isLong() |
boolean |
isNullable() |
boolean |
isPrimitive() |
boolean |
isShort() |
boolean |
isTypeVar() |
boolean |
isVoid() |
boolean |
isWildcard() |
String |
toJavaCode() |
ModelClass |
unbox()
When this is a boxed type, such as Integer, this will return the unboxed value,
such as int.
|
extendsViewStub, findGetterOrField, findInstanceGetter, findMethods, getAbstractMethods, getMethod, getMethods, getMethods, getMinApi, getSimpleName, isIncomplete, isList, isMap, isObject, isObservable, isObservableField, isString, isViewDataBinding
public final Class mClass
public JavaClass(Class clazz)
public String toJavaCode()
toJavaCode
in class ModelClass
public boolean isArray()
isArray
in class ModelClass
public ModelClass getComponentType()
ModelClass
getComponentType
in class ModelClass
public boolean isNullable()
isNullable
in class ModelClass
public boolean isPrimitive()
isPrimitive
in class ModelClass
public boolean isBoolean()
isBoolean
in class ModelClass
public boolean isChar()
isChar
in class ModelClass
public boolean isByte()
isByte
in class ModelClass
public boolean isShort()
isShort
in class ModelClass
public boolean isInt()
isInt
in class ModelClass
public boolean isLong()
isLong
in class ModelClass
public boolean isFloat()
isFloat
in class ModelClass
public boolean isDouble()
isDouble
in class ModelClass
public boolean isGeneric()
isGeneric
in class ModelClass
public List<ModelClass> getTypeArguments()
getTypeArguments
in class ModelClass
public boolean isTypeVar()
isTypeVar
in class ModelClass
public boolean isWildcard()
isWildcard
in class ModelClass
public boolean isInterface()
isInterface
in class ModelClass
public boolean isVoid()
isVoid
in class ModelClass
public ModelClass unbox()
ModelClass
unbox
in class ModelClass
public JavaClass box()
ModelClass
box
in class ModelClass
public boolean isAssignableFrom(ModelClass that)
ModelClass
that
can be assigned to
the type associated with this ModelClass. If this and that only require boxing or unboxing
then true is returned.isAssignableFrom
in class ModelClass
that
- the ModelClass to compare.that
requires only boxing or if that
is an
implementation of or subclass of this
.public ModelClass getSuperclass()
ModelClass
null
is returned if this is not a class or interface, such as an int, or
if it is java.lang.Object or an interface that does not extend any other type.getSuperclass
in class ModelClass
public String getCanonicalName()
getCanonicalName
in class ModelClass
public ModelClass erasure()
ModelClass
erasure
in class ModelClass
public String getJniDescription()
ModelClass
getJniDescription
in class ModelClass
TypeUtil
protected ModelField[] getDeclaredFields()
getDeclaredFields
in class ModelClass
protected ModelMethod[] getDeclaredMethods()
getDeclaredMethods
in class ModelClass
public boolean equals(Object obj)
Object
The equals
method implements an equivalence relation
on non-null object references:
x
, x.equals(x)
should return
true
.
x
and y
, x.equals(y)
should return true
if and only if
y.equals(x)
returns true
.
x
, y
, and z
, if
x.equals(y)
returns true
and
y.equals(z)
returns true
, then
x.equals(z)
should return true
.
x
and y
, multiple invocations of
x.equals(y)
consistently return true
or consistently return false
, provided no
information used in equals
comparisons on the
objects is modified.
x
,
x.equals(null)
should return false
.
The equals
method for class Object
implements
the most discriminating possible equivalence relation on objects;
that is, for any non-null reference values x
and
y
, this method returns true
if and only
if x
and y
refer to the same object
(x == y
has the value true
).
Note that it is generally necessary to override the hashCode
method whenever this method is overridden, so as to maintain the
general contract for the hashCode
method, which states
that equal objects must have equal hash codes.
equals
in class Object
obj
- the reference object with which to compare.true
if this object is the same as the obj
argument; false
otherwise.Object.hashCode()
,
HashMap
public int hashCode()
Object
HashMap
.
The general contract of hashCode
is:
hashCode
method
must consistently return the same integer, provided no information
used in equals
comparisons on the object is modified.
This integer need not remain consistent from one execution of an
application to another execution of the same application.
equals(Object)
method, then calling the hashCode
method on each of
the two objects must produce the same integer result.
Object.equals(java.lang.Object)
method, then calling the hashCode
method on each of the
two objects must produce distinct integer results. However, the
programmer should be aware that producing distinct integer results
for unequal objects may improve the performance of hash tables.
As much as is reasonably practical, the hashCode method defined by
class Object
does return distinct integers for distinct
objects. (This is typically implemented by converting the internal
address of the object into an integer, but this implementation
technique is not required by the
JavaTM programming language.)
hashCode
in class Object
Object.equals(java.lang.Object)
,
System.identityHashCode(java.lang.Object)