反射怎么获取类属性类型

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了反射怎么获取类属性类型相关的知识,希望对你有一定的参考价值。

有一个类: class People public int ID get; set; public string Name get; set; public bool Register set; get; public float Gold get; set; 我怎么通过反射获取每一个属性的类型,是Int型的,还是string型的还是float型的,我主要想实力话这个类的时候,初始化这些值,string 为Empty,Int为0.

参考技术A 反射可以获取到属性类型,Field类里面有个方法,getType()就是获取属性类型的。。。
下面是个示例代码。。。
public
static
void
main(String
args[])

People
peo
=
new
People();
Class
cla
=
People.class;
try

Field[]
fields
=
cla.getFields();
for(Field
field:fields)
Class
c
=
field.getType();
if(c==String.class)
field.set(peo,
"EMPTY");
else
if(c==Integer.class)
field.set(peo,
0);



catch
(SecurityException
e)

//
TODO
Auto-generated
catch
block
e.printStackTrace();
catch
(IllegalArgumentException
e)

//
TODO
Auto-generated
catch
block
e.printStackTrace();

catch
(IllegalAccessException
e)

//
TODO
Auto-generated
catch
block
e.printStackTrace();


主要就是用Class
c
=
field.getType();
这个来获取类型。。。。
希望能帮到你。。。仍有问题可以Hi我。。。或者直接追问。。。

以上是关于反射怎么获取类属性类型的主要内容,如果未能解决你的问题,请参考以下文章

怎么通过反射获得实体类中List类型的对象的各个属性?

请问 java 怎么获取一个类里面属性上方的注释

java 通过反射怎么获取方法中参数值

java中如何通过反射获取类的属性

c# 如何通过反射 获取属性值

说说对java反射的理解,使用反射如何获取一个类的所有方法,使用反射需要注意哪些问题?