最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java對象類型的判斷詳解

 更新時間:2019年04月28日 11:55:03   作者:zeling1005  
這篇文章主要介紹了Java對象類型的判斷,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

instanceof

判斷某個對象是否是某個類的實例或者某個類的子類的實例。它的判斷方式大概是這樣的:

public<T> boolean function(Object obj, Class<T> calzz) {
    if (obj == null) {
      return false;
    }
    try {
      T t = (T) obj;
      return true;
    } catch (ClassCastException e) {
      return false;
    }
  }

Class.equals()

這種方式比較的類型,一定是本身才返回true,子類或者父類都返回false;

 // B是A的子類,C是B的子類
    B b = new B();
    // false
    System.out.println(b.getClass().equals(A.class));
    // true
    System.out.println(b.getClass().equals(B.class));
    // false
    System.out.println(b.getClass().equals(C.class));

PS:b.getClass().equals(A.class)等同于b.getClass() == A.class

Class.isInstance()

這個方法跟instanceof完全等價。

 // B是A的子類,C是B的子類
    B b = new B();
    // true
    System.out.println(A.class.isInstance(b));
    // true
    System.out.println(B.class.isInstance(b));
    // false
    System.out.println(C.class.isInstance(b));

Class.isAssignableFrom

判斷某個類是否是另一個類和其子類。

 // B是A的子類,C是B的子類
    // false
    System.out.println(B.class.isAssignableFrom(A.class));
    // true 
    System.out.println(B.class.isAssignableFrom(B.class));
    // true
    System.out.println(B.class.isAssignableFrom(C.class));

以上所述是小編給大家介紹的Java對象類型的判斷詳解整合,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關(guān)文章

  • Java中的CyclicBarrier循環(huán)柵欄解析

    Java中的CyclicBarrier循環(huán)柵欄解析

    這篇文章主要介紹了Java中的CyclicBarrier循環(huán)柵欄解析,從字面上的意思可以知道,這個類的中文意思是"循環(huán)柵欄",大概的意思就是一個可循環(huán)利用的屏障,它的作用就是會讓所有線程都等待完成后才會繼續(xù)下一步行動,需要的朋友可以參考下
    2023-12-12
  • Java中超高頻常見字符操作合集(建議收藏)

    Java中超高頻常見字符操作合集(建議收藏)

    這篇文章主要為大家詳細介紹了Java中超高頻常見字符操作合集,文中的示例代碼講解詳細,對我們學(xué)習(xí)java有一定的幫助,需要的小伙伴可以參考下
    2023-10-10
  • 淺談Java內(nèi)省機制

    淺談Java內(nèi)省機制

    本文主要介紹了Java內(nèi)省機制,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • Java 反應(yīng)式編程構(gòu)建響應(yīng)式系統(tǒng)的實踐案例

    Java 反應(yīng)式編程構(gòu)建響應(yīng)式系統(tǒng)的實踐案例

    本文介紹了反應(yīng)式編程的概念、特點、優(yōu)勢以及在Java生態(tài)中的應(yīng)用,文中詳細講解了常見的反應(yīng)式編程庫,通過一個實戰(zhàn)案例展示了如何利用反應(yīng)式編程構(gòu)建高效的實時數(shù)據(jù)處理系統(tǒng),感興趣的朋友跟隨小編一起看看吧
    2026-04-04
  • JAVA雙親委派機制詳解及實際應(yīng)用場景

    JAVA雙親委派機制詳解及實際應(yīng)用場景

    雙親委派機制是Java類加載器加載類時的一種策略,這篇文章主要介紹了JAVA雙親委派機制的相關(guān)資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2025-08-08
  • Struts2.5版本struts.xml與web.xml配置的更改方法

    Struts2.5版本struts.xml與web.xml配置的更改方法

    這篇文章主要給大家介紹了關(guān)于Struts2.5版本中struts.xm與web.xml配置的更改方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-11-11
  • 一文搞懂Java?JDBC中的SQL注入問題

    一文搞懂Java?JDBC中的SQL注入問題

    在用戶輸入的數(shù)據(jù)中有SQL關(guān)鍵字或語法,并且關(guān)鍵字或語法參與了SQL語句的編譯,導(dǎo)致SQL語句編譯后的條件為true,一直得到正確的結(jié)果,這種現(xiàn)象就是SQL注入,這篇文章主要介紹了一文搞懂Java?JDBC中的SQL注入問題,需要的朋友可以參考下
    2022-10-10
  • Java中的Semaphore信號量詳解

    Java中的Semaphore信號量詳解

    這篇文章主要介紹了Java中的Semaphore信號量詳解,Semaphore(信號量)是用來控制同時訪問特定資源的線程數(shù)量,通過協(xié)調(diào)各個線程以保證合理地使用公共資源,需要的朋友可以參考下
    2023-12-12
  • SpringBoot與knife4j的整合使用過程

    SpringBoot與knife4j的整合使用過程

    Knife4j?是一個基于Swagger構(gòu)建的開源?JavaAPI文檔工具,主要包括兩大核心功能:文檔說明和在線調(diào)試,這篇文章主要介紹了SpringBoot與knife4j的整合使用,需要的朋友可以參考下
    2024-08-08
  • Java實現(xiàn)簡單班級管理系統(tǒng)

    Java實現(xiàn)簡單班級管理系統(tǒng)

    這篇文章主要為大家詳細介紹了Java實現(xiàn)簡單班級管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02

最新評論

汨罗市| 全南县| 霍山县| 河池市| 巴中市| 徐水县| 晋城| 霸州市| 徐汇区| 兖州市| 泰安市| 信阳市| 井冈山市| 苏尼特左旗| 于田县| 昭觉县| 平度市| 鹿泉市| 如皋市| 广元市| 灵丘县| 长兴县| 苗栗县| 西城区| 丰镇市| 祁门县| 乾安县| 安阳市| 昌江| 沭阳县| 宁安市| 台北市| 揭阳市| 潮州市| 上犹县| 建阳市| 延寿县| 邯郸市| 大港区| 灵山县| 宿州市|