日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

Java父类强制转换子类原则

發布時間:2023/12/3 java 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java父类强制转换子类原则 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

轉載自?Java父類強制轉換子類原則

最近,微信群友在討論子類父類的轉換問題,其實不難,給大家用實例來說明一下就很明了了。

我們知道Java中子類轉換成父類是沒有任何問題的,那父類可以轉換成子類嗎?

來看下面這段程序:

public class TestObjectConvert { ? ?public static void main(String[] args) {test1();test2();} ? ?private static void test1() {Fruit fruit1 = new Fruit();Apple apple1 = new Apple();apple1 = (Apple) fruit1; // java.lang.ClassCastException} ? ?private static void test2() {Fruit fruit1 = new Apple();Apple apple1 = new Apple();apple1 = (Apple) fruit1;} ? ?static class Fruit { ? ?} ? ?static class Apple extends Fruit { ? ?} }

結果是:

test1:報類轉異常; test2:轉換正常。

所以,想讓父類強制轉換成子類,不是沒有可能,除非父類是子類構造出來的實例,不然是不能強轉的。

為什么呢?

如上代碼,如果父類實例出來的對象是Orange,Orange當然不能強制轉成Apple,所以說父類只有該子類對應的實例才能強轉。


總結

以上是生活随笔為你收集整理的Java父类强制转换子类原则的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。