JavaSE8基础 Class getDeclaredFields 获取一个类中所有的成员变量

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaSE8基础 Class getDeclaredFields 获取一个类中所有的成员变量相关的知识,希望对你有一定的参考价值。

礼悟:
           好好学习多思考,尊师重道存感恩。叶见寻根三返一,活水清源藏于零。
           虚怀若谷良心主,皓月当空自在王。愿给最苦行无悔,诚劝且行且珍惜。




    os :windows7 x64
    jdk:jdk-8u131-windows-x64
    ide:Eclipse Oxygen Release (4.7.0)



被解析类的代码:

package blog.jizuiku1;

/**
 * 
 * 
 * @author jizuiku
 * @version V17.10.02
 */
public class Person {
	// 成员变量
	public    int age;
	private   String password;
	protected String name;
			  int score;
	
	public    static   int ageStatic;
    private   static String passwordStatic;
	protected static String nameStatic;
			  static int scoreStatic;
			  
	// 构造方法
	
	public    Person(int age) {System.out.println("public GZ:int");}
	public    Person(int age,int score) {System.out.println("public GZ:int,int");}
	private   Person() {System.out.println("private GZ:");}
	protected Person(String name) {System.out.println("protected GZ:String");}
			  Person(int age,String name){System.out.println("default GZ:int,String");}
	
	// 成员方法
			  
	public void sayHello(String name) {}
	private int sayHello() {return 1;}
	protected String sayHello(int age) {return "";}
			  void	sayHello(int age,String name) {}
	
			  
	public void sayHelloStatic(String name) {}
	private int sayHelloStatic() {return 1;}
	protected String sayHelloStatic(int age) {return "";}
			  void	sayHelloStatic(int age,String name) {}
	
}

 
演示类:

package blog.jizuiku1;

import java.lang.reflect.Field;

/**
 * Class getDeclaredFields 获取一个类中所有的成员变量
 * 
 * @author jizuiku
 * @version V17.10.02
 */
public class ClassGetAllFieldsDemo {
	public static void main(String[] args) throws Exception {
		String className = "blog.jizuiku0.Person";
		Class c = Class.forName(className);
		
		// 获取所有的成员变量
		Field[] fs = c.getDeclaredFields();
		for (Field field : fs) {
			System.out.println(field);
		}
	}
}

 
结果:
技术分享

  给最苦 看到结果的第一眼,迷糊了,想着这么长肯定是成员方法呀.......




Java优秀,值得学习。
学习资源:itcast和itheima视频库。如果您有公开的资源,可以分享给我的话,用您的资源学习也可以。
博文是观看视频后,融入思考写成的。博文好,是老师讲得好。博文坏,是 给最苦 没认真。
















以上是关于JavaSE8基础 Class getDeclaredFields 获取一个类中所有的成员变量的主要内容,如果未能解决你的问题,请参考以下文章

JavaSE8基础 Class 获取与设置静态私有字段

JavaSE8基础 Class 获取与设置非静态私有成员变量

JavaSE8基础 Class getConstructors 获取一个类的public级别构造方法

JavaSE8基础 Class getDeclaredFields 获取一个类中所有的成员变量

JavaSE8基础 Class getDeclaredMethods 获取类的所有方法(不包括父类的)

JavaSE8基础 经典二分查找问题 折半查找