反射怎么获取类属性类型
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我。。。或者直接追问。。。
以上是关于反射怎么获取类属性类型的主要内容,如果未能解决你的问题,请参考以下文章