T - 泛型public class BeanProperty<T> extends java.lang.Object implements GenericType<T>
java bean 的属性
| 限定符 | 构造器和说明 |
|---|---|
protected |
BeanProperty(java.lang.String propertyName,
java.lang.reflect.Field field,
java.lang.Class<T> propertyType,
java.lang.reflect.Method setter,
java.lang.reflect.Method getter,
java.lang.Class<?> ownerType,
java.lang.Class<?> declaringType) |
| 限定符和类型 | 方法和说明 |
|---|---|
boolean |
equals(java.lang.Object obj) |
<A extends java.lang.annotation.Annotation> |
getAnnotation(java.lang.Class<A> annotationClass)
返回当前属性的指定类型注解.
|
java.lang.annotation.Annotation[] |
getAnnotations()
返回当前属性的所有注解
|
java.lang.Class<?> |
getDeclaringType()
返回declaringType
|
java.lang.reflect.Field |
getField() |
java.lang.Class<?> |
getGenericType()
如果属性是一个支持泛型的对象,返回其泛型,如属性为类型java.util.Optional<java.lang.String>,则返回java.lang.String.
|
java.util.List<java.lang.Class<?>> |
getGenericTypes()
如果属性是一个支持泛型的对象,返回其所有泛型列表.
|
java.lang.String |
getName()
返回属性名称
|
java.lang.Class<?> |
getOwnerType()
返回ownerType
|
java.lang.Class<T> |
getType()
返回属性类型
|
java.lang.String |
getTypeName() |
java.lang.Object |
getValue(java.lang.Object obj)
获取属性
|
java.lang.Object |
getValueForce(java.lang.Object obj)
强制获取属性,使用field而非getter获取
|
<A extends java.lang.annotation.Annotation> |
hasAnnotation(java.lang.Class<A> annotationClass)
返回当前属性是否含有指定注解.
|
int |
hashCode() |
boolean |
isReadable()
当前属性是否是可读属性,拥有getter
|
boolean |
isWritable()
当前属性是否是可写属性,拥有setter
|
void |
setValue(java.lang.Object obj,
java.lang.Object value)
设置属性
|
void |
setValueForce(java.lang.Object obj,
java.lang.Object value)
强制设置属性,使用field而非setter设置
|
java.lang.String |
toString() |
protected BeanProperty(java.lang.String propertyName,
java.lang.reflect.Field field,
java.lang.Class<T> propertyType,
java.lang.reflect.Method setter,
java.lang.reflect.Method getter,
java.lang.Class<?> ownerType,
java.lang.Class<?> declaringType)
propertyName - 属性名称field - 存取数据的字段propertyType - 属性类型setter - 设置方法getter - 读取方法ownerType - 属性所在的类型declaringType - 定义属性的类型 (可能是ownerType的父类,也可能一样)public void setValue(java.lang.Object obj,
java.lang.Object value)
设置属性
obj - 需要设置属性的对象value - 属性值public void setValueForce(java.lang.Object obj,
java.lang.Object value)
强制设置属性,使用field而非setter设置
obj - 设置属性的目标对象value - 属性值public java.lang.Object getValue(java.lang.Object obj)
获取属性
obj - 获取属性的目标对象public java.lang.Object getValueForce(java.lang.Object obj)
强制获取属性,使用field而非getter获取
obj - 获取属性的目标对象public boolean isReadable()
当前属性是否是可读属性,拥有getter
public boolean isWritable()
当前属性是否是可写属性,拥有setter
public java.lang.Class<?> getGenericType()
如果属性是一个支持泛型的对象,返回其泛型,如属性为类型java.util.Optional<java.lang.String>,则返回java.lang.String.
public java.util.List<java.lang.Class<?>> getGenericTypes()
如果属性是一个支持泛型的对象,返回其所有泛型列表. 如属性为类型java.util.Map<java.lang.String, java.lang.Integer>,则返回[java.lang.String,java.lang.Integer].
public <A extends java.lang.annotation.Annotation> boolean hasAnnotation(java.lang.Class<A> annotationClass)
返回当前属性是否含有指定注解.
A - 注解类型annotationClass - 注解类型public <A extends java.lang.annotation.Annotation> A getAnnotation(java.lang.Class<A> annotationClass)
返回当前属性的指定类型注解.
A - 注解类型annotationClass - 注解类型public java.lang.annotation.Annotation[] getAnnotations()
返回当前属性的所有注解
public java.lang.String toString()
toString 在类中 java.lang.Objectpublic java.lang.String getName()
public java.lang.Class<T> getType()
getType 在接口中 GenericType<T>public java.lang.reflect.Field getField()
public java.lang.Class<?> getOwnerType()
public java.lang.Class<?> getDeclaringType()
public int hashCode()
hashCode 在类中 java.lang.Objectpublic boolean equals(java.lang.Object obj)
equals 在类中 java.lang.Objectpublic java.lang.String getTypeName()
getTypeName 在接口中 java.lang.reflect.Type