中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

java獲取class的方式有哪些

發布時間:2022-05-17 13:56:31 來源:億速云 閱讀:128 作者:iii 欄目:大數據

這篇文章主要介紹了java獲取class的方式有哪些的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇java獲取class的方式有哪些文章都會有所收獲,下面我們一起來看看吧。

獲取方式

1、已知具體的類,通過類的 class 屬性獲取,該方法最為安全可靠,程序性能最高。

2、已知某個類的實例,調用該實例的 getclass() 方法獲取Class對象。

3、已知全類名,且該類在類路徑下,可通過Class類的靜態方法 forName() 獲取,可能拋出 ClassNotFoundException,比較常用。

4、通過類加載器。

實例

@Test
public void test2() throws ClassNotFoundException {
    //方式一:調用運行時類的屬性:.class
    Class<Person> clazz1 = Person.class;
    System.out.println(clazz1);//class cn.bruce.java.Person
 
    //方式二:通過運行時類的對象,調用getClass()
    Person p1 = new Person();
    Class<? extends Person> clazz2 = p1.getClass();
    System.out.println(clazz2);//class cn.bruce.java.Person
 
    //方式三:調用Class的靜態方法:forName(String classPath)
    Class<?> clazz3 = Class.forName("cn.bruce.java.Person");
    System.out.println(clazz3);//class cn.bruce.java.Person
 
    System.out.println(clazz1 == clazz2);//true
    System.out.println(clazz1 == clazz3);//true
    //方式四:使用類的加載器:ClassLoader  (了解)
    ClassLoader classLoader = ReflectionTest.class.getClassLoader();
    Class<?> clazz4 = classLoader.loadClass("cn.bruce.java.Person");
    System.out.println(clazz4);//class cn.bruce.java.Person
    System.out.println(clazz1 == clazz4);//true
}

關于“java獲取class的方式有哪些”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“java獲取class的方式有哪些”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

开江县| 简阳市| 潞西市| 巴林左旗| 克山县| SHOW| 汶川县| 巴彦县| 革吉县| 东宁县| 沾益县| 油尖旺区| 大余县| 庄浪县| 靖江市| 崇州市| 藁城市| 固始县| 瓮安县| 宜兰市| 柘荣县| 福鼎市| 将乐县| 嘉善县| 怀安县| 买车| 永善县| 井陉县| 通江县| 西林县| 措美县| 德庆县| 南安市| 辽中县| 白城市| 乌拉特前旗| 方城县| 曲沃县| 彭山县| 喀喇| 滁州市|