import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.List;
public class testList{
public static void main(String[] args) {
user us = new
user(1,"xg","111");
user1 us1 = new
user1(2,"dx","111");
List list = new
ArrayList();
list.add(us);
list.add(us1);
try {
System.out.println("修改之前:");
deal(list);
System.out.println("修改之后:");
System.out.println(us.getPassWord());
System.out.println(us1.getPassWord());
} catch (SecurityException e)
{
// TODO
Auto-generated catch block
e.printStackTrace();
} catch (NoSuchFieldException
e) {
// TODO
Auto-generated catch block
e.printStackTrace();
}
}
public static void deal(List list) throws
SecurityException, NoSuchFieldException
{
for (int i = 0; i
< list.size(); i++) {
//获取对象中名为"passWord"元素
Field fields
= list.get(i).getClass().getDeclaredField("passWord");
try {
if
(!fields.isAccessible())//判断该对象是否可以访问
{
fields.setAccessible(true);//设置为可访问
}
System.out.println(fields.get(list.get(i)));//获取list中所有字段名为“passWord”的值
fields.set(list.get(i),
"222");//将list中所有字段名为“passWord”的值设置为“222"
} catch
(IllegalArgumentException e) {
//
TODO Auto-generated catch block
e.printStackTrace();
} catch
(IllegalAccessException e) {
//
TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
加载中,请稍候......