for (int i = 0; i < fieldslength; i++) {
Field field = fields[i];
String fieldName = fieldgetName();
Systemoutprintln("name====="+fieldName);
String firstLetter = fieldNamesubstring(0, 1)toUpperCase();
// 获得和属性对应的getXXX()方法的名字
String getMethodName = "get" + firstLetter + fieldNamesubstring(1);
// 获得和属性对应的getXXX()方法
Method getMethod = classTypegetMethod(getMethodName, new Class[]{});
// 调用原对象的getXXX()方法
Object value = getMethodinvoke(object, new Object[]{});
Systemoutprintln("value===="+value);
}
你应该这么写定义一个Person类
class Person{
private int age;
void shout(){
Systemoutprintln("my age is "+age);
}
public void setage(int x){
age=x;
}
public int getage(){
return age;
}
}
使用这个Person类
class TestPerson{
public static void main(String [] args){
Person p1=new Person();
Person p2=new Person();
p1setage(23);
p2setage(11);
p1shout();
p2shout();
new Person()shout();
}
}
如果你对我的回答满意,请给我多加分,若还有什么疑问请给我留言!谢谢!
首先方法不能访问另外方法中的变量的。
public class A{
private int temp;
public void t1(){
int i = 100;
temp = i;//把想要的值,备份一份
}
public void t2(){
//想拿到t1方法中的i的值。你可以把t1方法的返回值设置为i类型的
//如public int t1(){ ; return i} 然后调用t1取返回值
//或者
//定义一个私有成员,共享变量的值temp,用temp的值即可
}
}
最开始采用的是BeanUtilsdescribe(bean) ,但在插入数据库的经常报数据类型错误的异常。看了下源码,BeanUtils调用的是BeanUtilsBean的这个getNestedProperty方法,该方法在读取值之后,会再调用一次(getConvertUtils()convert(value));,进行类型转化成String。 因此BeanUtilsdescribe转化出来的Map的value都是String。
如果成员变量是protected或public的,那么对子类可见,直接使用变量名就可以访问子类中继承的该变量。如果成员变量是private的,那么只能通过父类提供的getter和setter去访问。
以上就是关于如何利用java反射顺序的从一个java类中得到其中定义的成员变量名或者方法全部的内容,包括:如何利用java反射顺序的从一个java类中得到其中定义的成员变量名或者方法、java 中 类调用另一个类的成员变量 怎么弄、java编程中在写一个成员方法的代码时怎么样得到同一个类中其他成员方法里面的变量啊谢谢!!!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)