当前位置:编程学习 > JAVA >>

关于反射的问题

import java.lang.reflect.Field;
import java.util.ArrayList;

public class TestReflect {
public static void main( String[] args ) throws IllegalArgumentException, IllegalAccessException {
TestReflect t1 = new TestReflect();
t1.setName( "t1" );
TestReflect t2 = new TestReflect();
t2.setName( "t2" );
t2.s="1233123";
ArrayList<Object> list = new ArrayList<Object>();
list.add( t1 );
list.add( t2 );
t1=t2;
System.out.println(t1._objname); 
for ( Object obj : list ) {
Field[] f = obj.getClass().getDeclaredFields();
for ( int i = 0; i < f.length; i++ ) {
System.out.println( "name:"+f[i].getName() + "   value:"+f[i].get( obj )+"  className" +obj.getClass().getName());
}
}
}

public void setName(String objname){
this._objname = objname;
}

private String _objname = getClass().getName();
public int a = 12;
public String s = "s";

}

t1明明就等于t2了  反射出来的值依然是初始值 为什么 反射 Java --------------------编程问答-------------------- 你打印的是list里面的值! --------------------编程问答--------------------
引用 1 楼 huxiweng 的回复:
你打印的是list里面的值!
发现了  如果我要把所有对象保存起来应该怎么储存啊 --------------------编程问答-------------------- 无耻的顶一个 --------------------编程问答-------------------- 我也没搞懂,我把那个t1 = t2;放在循环里面结果还是一样!是不是遍历这个对象的属性时跟这个赋值没关系呢???搞不懂! --------------------编程问答--------------------
补充:Java ,  Java相关
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,