久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      java什么是反射機(jī)制

      Java 反射機(jī)制是在運(yùn)行狀態(tài)中,對于任意一個(gè)類,都能夠獲得這個(gè)類的所有屬性和方法,對于任意一個(gè)對象都能夠調(diào)用它的任意一個(gè)屬性和方法。

      java什么是反射機(jī)制

      這種在運(yùn)行時(shí)動態(tài)的獲取信息以及動態(tài)調(diào)用對象的方法的功能稱為 Java 的反射機(jī)制。 (推薦學(xué)習(xí):java課程)

      Class 類與 java.lang.reflect 類庫一起對反射的概念進(jìn)行了支持,該類庫包含了 Field,Method,Constructor 類 (每個(gè)類都實(shí)現(xiàn)了 Member 接口)。這些類型的對象時(shí)由 JVM 在運(yùn)行時(shí)創(chuàng)建的,用以表示未知類里對應(yīng)的成員。

      這樣你就可以使用 Constructor 創(chuàng)建新的對象,用 get() 和 set() 方法讀取和修改與 Field 對象關(guān)聯(lián)的字段,用 invoke() 方法調(diào)用與 Method 對象關(guān)聯(lián)的方法。

      另外,還可以調(diào)用 getFields() getMethods() 和 getConstructors() 等很便利的方法,以返回表示字段,方法,以及構(gòu)造器的對象的數(shù)組。這樣匿名對象的信息就能在運(yùn)行時(shí)被完全確定下來,而在編譯時(shí)不需要知道任何事情。

      通過反射機(jī)制獲取類信息

      通過反射機(jī)制創(chuàng)建對象,在創(chuàng)建對象之前要獲得對象的構(gòu)造函數(shù)對象,通過構(gòu)造函數(shù)對象創(chuàng)建對應(yīng)類的實(shí)例。

      下面這段代碼分別在運(yùn)行期間創(chuàng)建了一個(gè)無參與有參的對象實(shí)例。由于 getConstructor() 方法與 newInstance() 方法拋出了很多異常 (你可以通過源代碼查看它們),這里就簡寫了直接拋出一個(gè) Exception,下同。

      package com.jas.reflect;  import java.lang.reflect.Constructor;  public class ReflectTest {     public static void main(String[] args) throws Exception {          Class clazz = null;         clazz = Class.forName("com.jas.reflect.Fruit");         Constructor<Fruit> constructor1 = clazz.getConstructor();         Constructor<Fruit> constructor2 = clazz.getConstructor(String.class);          Fruit fruit1 = constructor1.newInstance();         Fruit fruit2 = constructor2.newInstance("Apple");      } }  class Fruit{     public Fruit(){         System.out.println("無參構(gòu)造器 Run...........");     }     public Fruit(String type){         System.out.println("有參構(gòu)造器 Run..........." + type);     }  }

      輸出:

      無參構(gòu)造器 Run........... 有參構(gòu)造器 Run...........Appl

      贊(0)
      分享到: 更多 (0)
      網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號