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

java對(duì)象轉(zhuǎn)型實(shí)例分析

 更新時(shí)間:2014年10月05日 12:05:42   投稿:shichen2014  
這篇文章主要介紹了java對(duì)象轉(zhuǎn)型的概念及用法,并以實(shí)例形式進(jìn)行了較為詳細(xì)的介紹,需要的朋友可以參考下

本文實(shí)例講述了java對(duì)象轉(zhuǎn)型的概念,分享給大家供大家參考。具體方法如下:

對(duì)象轉(zhuǎn)型(casting)注意事項(xiàng)如下:

1、一個(gè)基類的引用類型變量可以“指向”其子類的對(duì)象。

2、一個(gè)基類的引用不可以訪問(wèn)其子類對(duì)象新增加的成員(屬性和方法)。

3、可以使用 引用變量 instanceof 類名 來(lái)判斷該引用型變量所“指向”的對(duì)象是否屬于該類或該類的子類。

4、子類的對(duì)象可以當(dāng)做基類的對(duì)象來(lái)使用稱作向上轉(zhuǎn)型(upcasting),反之成為向下轉(zhuǎn)型(downcasting)。

具體實(shí)現(xiàn)代碼如下:

public class TestCasting{
  public static void main(String args[]){
    Animal animal = new Animal("name");
    Cat cat = new Cat("catName","blueColor");
    Dog dog = new Dog("dogName","yellowColor");
    
    System.out.println(animal instanceof Animal);
    System.out.println(cat instanceof Animal);
    System.out.println(dog instanceof Animal);
    //System.out.println(animal instanceof cat);  //error
    
    animal = new Dog("dogAnimal","dogColor");
    System.out.println(animal.name);
    //System.out.println(animal.forColor); //error
    System.out.println(animal instanceof Animal);
    System.out.println(animal instanceof Dog);
    Dog d1 = (Dog)animal;
    System.out.println(d1.forColor); 
  }
}
class Animal{
  public String name;
  public Animal(String name){   
    this.name = name;
  }
}
class Cat extends Animal{
  public String eyeColor;
  public Cat(String name, String eyeColor){
    super(name);
    this.eyeColor = eyeColor;
  }
}

class Dog extends Animal{
  public String forColor;
  public Dog(String name, String forColor){
    super(name);
    this.forColor = forColor;
  }
}

運(yùn)行結(jié)果如下圖所示:

希望本文所述對(duì)大家的Java程序設(shè)計(jì)有所幫助

相關(guān)文章

  • 解析Idea為什么不推薦使用@Autowired進(jìn)行Field注入

    解析Idea為什么不推薦使用@Autowired進(jìn)行Field注入

    這篇文章主要介紹了Idea不推薦使用@Autowired進(jìn)行Field注入的原因,網(wǎng)上文章大部分都是介紹兩者的區(qū)別,沒(méi)有提到為什么,當(dāng)時(shí)想了好久想出了可能的原因,今天來(lái)總結(jié)一下
    2022-05-05
  • Java如何從json字符串中獲取某個(gè)值詳解

    Java如何從json字符串中獲取某個(gè)值詳解

    Java開(kāi)發(fā)當(dāng)中經(jīng)常需要Json格式的數(shù)據(jù),下面這篇文章主要給大家介紹了關(guān)于Java如何從json字符串中獲取某個(gè)值的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-08-08
  • 基于Spring Web Jackson對(duì)RequestBody反序列化失敗的解決

    基于Spring Web Jackson對(duì)RequestBody反序列化失敗的解決

    這篇文章主要介紹了基于Spring Web Jackson對(duì)RequestBody反序列化失敗的解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-09-09
  • Spring中的@EnableScheduling定時(shí)任務(wù)注解

    Spring中的@EnableScheduling定時(shí)任務(wù)注解

    這篇文章主要介紹了Spring中的@EnableScheduling注解,@EnableScheduling是 Spring Framework 提供的一個(gè)注解,用于啟用 Spring 的定時(shí)任務(wù)功能,通過(guò)使用這個(gè)注解,可以在 Spring 應(yīng)用程序中創(chuàng)建定時(shí)任務(wù),需要的朋友可以參考下
    2024-01-01
  • Java對(duì)時(shí)間的簡(jiǎn)單操作實(shí)例

    Java對(duì)時(shí)間的簡(jiǎn)單操作實(shí)例

    這篇文章主要介紹了Java對(duì)時(shí)間的簡(jiǎn)單操作,實(shí)例分析了針對(duì)java.util.Date的各類常見(jiàn)操作,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-01-01
  • SpringBoot使用Sa-Token實(shí)現(xiàn)賬號(hào)封禁、分類封禁、階梯封禁的示例代碼

    SpringBoot使用Sa-Token實(shí)現(xiàn)賬號(hào)封禁、分類封禁、階梯封禁的示例代碼

    本文主要介紹了SpringBoot使用Sa-Token實(shí)現(xiàn)賬號(hào)封禁、分類封禁、階梯封禁的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • MyBatis-Plus動(dòng)態(tài)表名的使用

    MyBatis-Plus動(dòng)態(tài)表名的使用

    本文主要介紹了MyBatis-Plus動(dòng)態(tài)表名的使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-04-04
  • Mybatis-Plus將字段設(shè)置為null解決方法

    Mybatis-Plus將字段設(shè)置為null解決方法

    MyBatis-Plus是一個(gè)MyBatis的增強(qiáng)工具,在MyBatis的基礎(chǔ)上只做增 強(qiáng)不做改變,為簡(jiǎn)化開(kāi)發(fā)、提高效率而生,下面這篇文章主要給大家介紹了關(guān)于Mybatis-Plus將字段設(shè)置為null的解決方法的相關(guān)資料,需要的朋友可以參考下
    2023-04-04
  • Java?NIO?Buffer實(shí)現(xiàn)原理詳解

    Java?NIO?Buffer實(shí)現(xiàn)原理詳解

    本篇文章主要對(duì)NIO核心三件套:緩沖區(qū)(Buffer)、選擇器?(Selector)和通道(Channel),其中之一的緩沖區(qū)Buffer實(shí)現(xiàn)原理的學(xué)習(xí)總結(jié)。感興趣的小伙伴可以了解一下
    2021-11-11
  • Spring SpringMVC在啟動(dòng)完成后執(zhí)行方法源碼解析

    Spring SpringMVC在啟動(dòng)完成后執(zhí)行方法源碼解析

    這篇文章主要介紹了SpringMVC在啟動(dòng)完成后執(zhí)行方法源碼解析,還是非常不錯(cuò)的,在這里分享給大家,需要的朋友可以參考下。
    2017-09-09

最新評(píng)論

仁布县| 龙川县| 浪卡子县| 丹阳市| 和平区| 五台县| 潢川县| 富源县| 阿拉善盟| 新邵县| 米林县| 工布江达县| 莱州市| 石阡县| 遵义县| 家居| 虎林市| 德州市| 淄博市| 南丰县| 安化县| 东阿县| 沈丘县| 云浮市| 牡丹江市| 宝丰县| 承德县| 纳雍县| 青冈县| 大邑县| 拜泉县| 阿坝县| 孟村| 黎平县| 阳谷县| 昌宁县| 柘城县| 加查县| 寿阳县| 大渡口区| 靖江市|