关于DeclaredFields()

来源:3-5 Field类的概述和使用

无限精彩

2020-01-08 20:45:19

http://img.mukewang.com/climg/5e15cec1094993cb14040686.jpg

老师,这个也包括父类继承属性吗?

写回答

1回答

好帮手慕酷酷

2020-01-09

同学你好,getDeclaredFields()方法表示获取所有属性,但是不包括父类继承的属性

老师这里给同学举个例子:

父类:

public class ParentModel {
 
    public String a;
  
}

子类继承父类:

public class Model extends ParentModel{
 
    public String b;

}

测试类:

import java.lang.reflect.Field;


public class Test{
	public static void main(String[] args) {
		
		
		Field[] fs1 = Model.class.getDeclaredFields();
	
		for (Field f:fs1) {           
			System.out.println(f.getName());
		}
	}
	
}

测试结果:我们可以看到通过getDeclaredFields()方法,没有获取到父类的属性。

http://img.mukewang.com/climg/5e16880c0923ed8801030075.jpg

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!

0

0 学习 · 8016 问题

查看课程