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

詳談Java中instanceof和isInstance的區(qū)別

 更新時間:2017年01月16日 10:13:43   投稿:jingxian  
下面小編就為大家?guī)硪黄斦凧ava中instanceof和isInstance的區(qū)別。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

一次性搞定instanceof和isInstance,instanceof和isInstance長的非常像,用法也很類似,先看看這兩個的用法:

obj.instanceof(class)

也就是說這個對象是不是這種類型,

1. 一個對象是本身類的一個對象

2. 一個對象是本身類父類(父類的父類)和接口(接口的接口)的一個對象

3. 所有對象都是Object

4. 凡是null有關(guān)的都是false  null.instanceof(class)

class.inInstance(obj)

這個對象能不能被轉(zhuǎn)化為這個類

1. 一個對象是本身類的一個對象

2. 一個對象能被轉(zhuǎn)化為本身類所繼承類(父類的父類等)和實現(xiàn)的接口(接口的父接口)強轉(zhuǎn)

3. 所有對象都能被Object的強轉(zhuǎn)

4. 凡是null有關(guān)的都是false   class.inInstance(null)

類名.class和對象.getClass()幾乎沒有區(qū)別,因為一個類被類加載器加載后,就是唯一的一個類。

一個實例搞定:

 

class A {
}

class B extends A {
}

public class Test {
  public static void main(String[] args) {

    B b = new B();
    A a = new A();
    A ba = new B();
    System.out.println("1------------");
    System.out.println(b instanceof B);
    System.out.println(b instanceof A);
    System.out.println(b instanceof Object);
    System.out.println(null instanceof Object);
    System.out.println("2------------");
    System.out.println(b.getClass().isInstance(b));
    System.out.println(b.getClass().isInstance(a));
    System.out.println("3------------");
    System.out.println(a.getClass().isInstance(ba));
    System.out.println(b.getClass().isInstance(ba));
    System.out.println(b.getClass().isInstance(null));
    System.out.println("4------------");
    System.out.println(A.class.isInstance(a));
    System.out.println(A.class.isInstance(b));
    System.out.println(A.class.isInstance(ba));
    System.out.println("5------------");
    System.out.println(B.class.isInstance(a));
    System.out.println(B.class.isInstance(b));
    System.out.println(B.class.isInstance(ba));
    System.out.println("6------------");
    System.out.println(Object.class.isInstance(b));
    System.out.println(Object.class.isInstance(null));
  }
}

運行結(jié)果:

以上這篇詳談Java中instanceof和isInstance的區(qū)別就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Spring Boot 2.x 把 Guava 干掉了選擇本地緩存之王 Caffeine(推薦)

    Spring Boot 2.x 把 Guava 干掉了選擇本地緩存之王 Caffeine(推薦)

    這篇文章主要介紹了Spring Boot 2.x 把 Guava 干掉了選擇本地緩存之王 Caffeine,本文給大家介紹的非常詳細,對大家的學(xué)習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-01-01
  • Java多線程之線程安全問題詳細解析

    Java多線程之線程安全問題詳細解析

    這篇文章主要給大家介紹了關(guān)于Java多線程之線程安全問題的相關(guān)資料,Java多線程中線程安全問題是一個常見的問題,因為多個線程可能同時訪問共享的資源,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2023-11-11
  • SpringBoot與Spring中數(shù)據(jù)緩存Cache超詳細講解

    SpringBoot與Spring中數(shù)據(jù)緩存Cache超詳細講解

    我們知道內(nèi)存讀取速度遠大于硬盤讀取速度,當需要重復(fù)獲取相同數(shù)據(jù)時,一次一次的請求數(shù)據(jù)庫或者遠程服務(wù),導(dǎo)致在數(shù)據(jù)庫查詢或者遠程方法調(diào)用上小號大量的時間,最終導(dǎo)致程序性能降低,這就是數(shù)據(jù)緩存要解決的問題,學(xué)過計算機組成原理或者操作系統(tǒng)的同學(xué)們應(yīng)該比較熟悉
    2022-10-10
  • java數(shù)據(jù)結(jié)構(gòu)之搜索二叉樹

    java數(shù)據(jù)結(jié)構(gòu)之搜索二叉樹

    這篇文章主要為大家詳細介紹了java數(shù)據(jù)結(jié)構(gòu)之搜索二叉樹,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • mybatis where 標簽使用

    mybatis where 標簽使用

    where標記的作用類似于動態(tài)sql中的set標記,本文主要介紹了mybatis where 標簽使用,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • Java實現(xiàn)XML與JSON的互相轉(zhuǎn)換詳解

    Java實現(xiàn)XML與JSON的互相轉(zhuǎn)換詳解

    這篇文章主要為大家詳細介紹了如何使用Java實現(xiàn)XML與JSON的互相轉(zhuǎn)換,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學(xué)習一下
    2025-03-03
  • Spring?Boot?整合持久層之MyBatis

    Spring?Boot?整合持久層之MyBatis

    在實際開發(fā)中不僅僅是要展示數(shù)據(jù),還要構(gòu)成數(shù)據(jù)模型添加數(shù)據(jù),這篇文章主要介紹了SpringBoot集成Mybatis操作數(shù)據(jù)庫,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友們下面隨著小編來一起學(xué)習學(xué)習吧
    2022-08-08
  • 教你如何使用Java多線程編程LockSupport工具類

    教你如何使用Java多線程編程LockSupport工具類

    在Java工具包中有一個LockSupport工具類,主要負責掛起和喚醒線程,這篇文章主要介紹了教你如何使用Java多線程編程LockSupport工具類,需要的朋友可以參考下
    2021-04-04
  • java使用Apache工具集實現(xiàn)ftp文件傳輸代碼詳解

    java使用Apache工具集實現(xiàn)ftp文件傳輸代碼詳解

    這篇文章主要介紹了java使用Apache工具集實現(xiàn)ftp文件傳輸代碼詳解,分享了詳細連接ftp server和上傳文件,下載文件的代碼,以及結(jié)果展示,具有一定借鑒價值,需要的朋友可以參考下。
    2017-12-12
  • Java的synchronized關(guān)鍵字深入解析

    Java的synchronized關(guān)鍵字深入解析

    這篇文章主要介紹了Java的synchronized關(guān)鍵字深入解析,在并發(fā)編程中,多線程同時并發(fā)訪問的資源叫做臨界資源,當多個線程同時訪問對象并要求操作相同資源時,分割了原子操作就有可能出現(xiàn)數(shù)據(jù)的不一致或數(shù)據(jù)不完整的情況,需要的朋友可以參考下
    2023-12-12

最新評論

隆尧县| 岳普湖县| 莱芜市| 安庆市| 东乌| 甘谷县| 汝州市| 隆回县| 岳普湖县| 甘肃省| 霸州市| 九江县| 申扎县| 渑池县| 大足县| 夹江县| 旅游| 茶陵县| 长治市| 县级市| 拉萨市| 宜良县| 类乌齐县| 文水县| 广东省| 陇南市| 阜阳市| 清河县| 三门县| 钟祥市| 双城市| 西峡县| 潢川县| 蕲春县| 阿拉尔市| 元朗区| 乐至县| 东至县| 霍城县| 陇西县| 朝阳市|