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

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

反射——Java高級開發必須懂的

難度入門
時長 1小時20分
學習人數
綜合評分9.67
760人評價 查看評價
9.9 內容實用
9.6 簡潔易懂
9.5 邏輯清晰
  • ************第一節:Class類的使用*********** 1>在面向對象的世界里,萬事萬物皆對象 在Java語言中,靜態成員(靜態成員屬于類)與普通數據類型(但有對應的包裝類彌補)不是對象 #特別強調:萬事萬物皆對象,類也是對象,任何一個類都是java.lang.Class類的實例對象,這個對象我們成為該類的類類型。 2>怎么表示Class類的實例對象(類類型)?(見截圖) ①Class c1=Foo.class,任何一個類都有一個隱含的靜態成員變量class; ②Class c2=FooObj.getClass()通過該類的對象調用getClass方法 注:不管c1還是c2都代表了Foo類的類類型,一個類只可能是Class類的一個實例對象; ③Class c3=Class.forName("com.imooc.reflect.Foo【類的全稱】"); ###可以通過類的類類型調用newInstance()方法創建該類的對象實例,需要強制類型轉換與捕獲異常,特別注意Foo類必須有無參構造方法【類有隱含的無參構造方法】 Foo fooObj=(Foo)c1/c2/c3.newInstance();
    查看全部
    1 采集 收起 來源:Class類的使用

    2018-03-22

  • ****JAVA---Reflect專題內容*** 1、Class類的使用; 2、方法的反射; 3、成員變量的反射; 4、構造函數的反射; 5、Java類的加載機制。
    查看全部
    0 采集 收起 來源:Class類的使用

    2016-11-08

  • 獲取方法
    查看全部
  • 動態加載和靜態加載
    查看全部
  • 第三種表達方式
    查看全部
    0 采集 收起 來源:Class類的使用

    2016-11-08

  • 類類型
    查看全部
    0 采集 收起 來源:Class類的使用

    2016-11-08

  • 兩種表達方式
    查看全部
    0 采集 收起 來源:Class類的使用

    2016-11-08

  • 集合范型
    查看全部
  • 萬事萬物皆對象
    查看全部
    0 采集 收起 來源:Class類的使用

    2016-11-08

  • 方法的反射
    查看全部
  • 動態加載Class.forName(""); 創建接口,實現多態
    查看全部
  • 1、new 出來的都是靜態加載類,一招出錯,全盤皆輸; 2、動態加載類 Class c = Class.forName(args[0]); OfficeAble oa = (OfficeAble)c.newInstance();//OfficeAble定義的功能類型接口
    查看全部
  • Java反射機制——通過反射了解集合泛型的本質 1:反射的操作都是編譯之后的操作;就是運行階段 2:java中集合的泛型是防止錯誤輸入的;只在編譯階段有效,只要繞過編譯就無效啦 我們可以通過方法的反射來操作,繞過編譯 eg: ArrayList list1=new ArrayList(); ArrayList<String> list2=new ArrayList<String>(); Class c1=list1.getClass(); Class c2=list2.getClass(); System.out.print(c1==c2);//true Method m=c2.getMethod("add",Object.class); m.invoke(list2,20);//向list2集合中添加一個int 型的值;繞過編譯 當然是不能直接foreach list2集合的,會報類型轉換錯誤
    查看全部
  • 方法的反射: 1.獲取A類中的print(int,int)方法: ①要獲取一個方法就是獲取類的信息,獲取類的信息首先要獲取類的類類型 A a1=new A(); Class c= a1.getClass(); ②獲取方法 由名稱和參數列表來決定,getMethod獲取的是public方法,getDelcaredMethod獲取自己聲明的方法 Method m =c.getMethod(methodName,paramtypes);//paramtypes可以用數組的形式表示new Class[]{int.class,int.class},也可以直接列舉類類型 2.方法的反射操作:是用m對象來進行方法調用,和a1.print(10,20)調用的方法相同m.invoke(a1,new Object[]{10,20}) Object o=m.invoke(對象名,參數);//方法如果沒有返回值返回null,如果有返回值返回具體值,參數可用數組的方式表示,也可以直接列舉,沒有參數就不寫
    查看全部
  • Class類的基本API操作 1、c.getName();//獲取類的名稱 2、c.getSimpleName();//不包含包名的類的名稱 3、c.getMethods();//獲取類的【所有方法】集合,【所有方法都是Method類的對象】得到的是一個數組 4、c.getDeclaredMethods();//獲取的是所有該類【自己聲明】的方法,【不問訪問權限】
    查看全部

舉報

0/150
提交
取消
課程須知
童鞋們,學習本課程前需要熟悉Java面向對象的思想,并能掌握Java IO輸入輸出流、集合和泛型等知識??蓞⒖寄秸n網Java入門的一、二、三季以及我的文件我做主——Java IO流課程。
老師告訴你能學到什么?
1、能夠理解并應用反射機制。 2、能夠了解反射機制在集合泛型中的應用。 3、有利于更好的學習框架等Java高級技術。

微信掃碼,參與3人拼團

微信客服

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

幫助反饋 APP下載

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

公眾號

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

友情提示:

您好,此課程屬于遷移課程,您已購買該課程,無需重復購買,感謝您對慕課網的支持!