利用反射获取类的属性名称

xiaoxiao2026-06-10  10

package com;

public class Test {

private String name;private String pass;public String getName() {return name;}public void setName(String name) {this.name = name;}public String getPass() {return pass;}public void setPass(String pass) {this.pass = pass;}

}

获取类

package com;

import java.lang.reflect.Field;

public class My {

public static void setAllComponentsName(Object f)

{Field[] fields = f.getClass().getDeclaredFields();for (int i = 0, len = fields.length; i < len; i++) {

try {String varName = fields[i].getName();boolean accessFlag = fields[i].isAccessible();fields[i].setAccessible(true);Object o = fields[i].get(f);System.out.println("传入的对象中包含一个如下的属性:" + varName + " = " + o);fields[i].setAccessible(accessFlag);} catch (SecurityException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (IllegalArgumentException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (IllegalAccessException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}

public static void main(String[] args) {setAllComponentsName(new Test());

}

}

转载请注明原文地址: https://www.6miu.com/read-5049921.html

最新回复(0)