Java获取成员变量构造函数信息
生活随笔
收集整理的這篇文章主要介紹了
Java获取成员变量构造函数信息
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
目錄
?
理論
實例
理論
成員變量也是對象!
java.lang.reflect.Field類封裝了關于成員變量的操作;
getFields()方法獲取的是所有public的成員變量的信息;
getDeclaredFields獲取的是該類自己聲明的成員的信息。
?
成員變量也是類!
java.lang.reflect.Field類封裝了關于成員變量的操作;
getFields()方法獲取的是所有的public的成員變量的信息;
getDeclaredFields獲取的是該類自己聲明的成員變量的信息
?
注意:在任意情況下想獲得一個類的信息,首先要得到這個類的類類型,得到了類的類類型,就可以很輕松的獲得類信息
?
實例
程序結構如下:
源碼如下:
ClassUtil.java
package my;import java.lang.reflect.Constructor; import java.lang.reflect.Field;public class ClassUtil {public static void printConMessage(Object obj) {Class c = obj.getClass();Constructor[] cs = c.getDeclaredConstructors();for(Constructor constructor : cs) {System.out.print(constructor.getName() + "(");//獲取構造函數參數列表Class[] paramTypes = constructor.getParameterTypes();for(Class class1 : paramTypes) {System.out.print(class1.getName() + ",");}System.out.println(")");}}public static void printMemberMessage(Object obj) {Class c = obj.getClass();Field[] fs = c.getDeclaredFields();for(Field field : fs) {//得到成員變量的類型的類型Class fieldType = field.getType();String typeName = fieldType.getName();//得到成員變量的名稱String fieldName = field.getName();System.out.println(typeName + "\t" + fieldName);}} }Test.java
package my;public class Test {public static void main(String[] args) {//ClassUtil.printMemberMessage("Hello");ClassUtil.printConMessage("Hello");} }printConMessage運行截圖如下:
printMemberMessage運行截圖如下:
?
?
新人創作打卡挑戰賽發博客就能抽獎!定制產品紅包拿不停!總結
以上是生活随笔為你收集整理的Java获取成员变量构造函数信息的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Spring Boot笔记-目前对Web
- 下一篇: Linux学习笔记-生成动态库(补充说明