首页 > 编程知识 正文

map的继承关系,java map转对象

时间:2023-05-05 20:10:48 阅读:23137 作者:2745

//*

获取一个类及其父类的所有属性

*

* @param clazz

* @return

*/

publicstaticlistfindallfieldsofselfandsuperclass {

Field[] fields=null;

list field list=lists.new ArrayList (;

while (真) {

if(clazz==null ) {

布雷克;

} else {

fields=clazz.getDeclaredFields (;

for(intI=0; i fields.length; I ) {

Fieldlist.add(Fields[I];

}

clazz=clazz.getSuperclass (;

}

}

返回字段列表;

}

//*

*将对象转到地图

* @param obj挂起的对象

* @return

*/

publicstaticmapgetvaluemap{

Map map=new HashMap (;

//system.out.println (obj.getclass ();

获取//f对象感知类中的所有属性字段

列表列表=findallfieldsofselfandsuperclass (obj.getclass ();

现场现场:列表(for ) {

String varName=field.getName (;

try {

//获取原始访问控制权限

booleanaccessflag=field.is accessible (;

//更改访问控制权限

field.set accessible (真;

//获取与对象f的属性fields[i]对应的对象的变量

objecto=field.get(obj );

if(o!=null )

map.put(varname,o );

//System.out.println (传递的对象包含以下变量: ' varName '=' o );

//恢复访问控制权限

field.set accessible (access标志);

} catch (illegalargumentexceptionex ) {

ex.printStackTrace (;

} catch (illegalaccessexceptionex ) ) ) ) )。

ex.printStackTrace (;

}

}

返回图;

}

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。