亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

【九月打卡】第十六天+了解反射

標簽:
Java

课程名称:反射

课程章节:第四章

主讲老师:Cedar


课程内容:

//java获取成员变量构造函数信息

/**
 * 成员变量也是对象
 * java.lang.reflect.Field
 * Field类封装了关于成员变量的操作
 */
public class methodDemo {
    public static void main(String[] args) {
        printFieldMethod("hello");
    }

    static void printFieldMethod(Object obj) {
        Class c = obj.getClass();
        /**
         * 成员变量也是对象
         * java.lang.reflect.Field
         * Field类封装了关于成员变量的操作
         * getFields 获取的是所有public的成员变量的信息
         * getDeclaredFields  获取的是该类自己声明的成员变量的信息
         */
//        Field[] fs = c.getFields();
        Field[] fs = c.getDeclaredFields();
        for (Field field : fs){
//            得到的成员变量的类型的类类型
            Class fieldType = field.getType();
            String typeName = fieldType.getName();
            //得到成员变量的名称
            String fieldName = field.getName();
            System.out.println(typeName + "---------" + fieldName);
        }
    }

    /**
     * 打印对象的构造函数的信息
     */
    public static void printConMessage(Object obj){
        Class c = obj.getClass();
        /**
         * 构造函数也是对象
         * java.lang.Constructor中封装了构造函数的信息
         */
//        Constructor[] cs = c.getConstructors();
        Constructor[] cs = c.getDeclaredConstructors();
        for (Constructor constructor :cs){
            System.out.println(constructor.getName());
            //获取构造函数的参数列表
            Class[] parameterTypes = constructor.getParameterTypes();
            for (Class class1 : parameterTypes){
                System.out.println(class1.getName() +",");
            }
        }
    }
    
}


课程收获:

这节主要学习了获取成员变量构造函数信息,因为成员变量也是对象,隶属于java.lang.reflect.Field,而Field类封装了关于成员变量的操作,所以这些东西还是需要知道的,这些东西的话,我感觉我用到的话很难,但是之后遇到这样的代码,我可以看懂,也可以运用。而且这章顺带还打印了构造函数,学到的东西还是非常多的,很多没有接触到的。


革命尚未成功,同志还需努力。


https://img1.sycdn.imooc.com/6328fb340001a8b908730618.jpg


點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
JAVA開發工程師
手記
粉絲
7
獲贊與收藏
6

關注作者,訂閱最新文章

閱讀免費教程

  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消