第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

將子類對(duì)象指定為超類對(duì)象時(shí)會(huì)發(fā)生什么情況

將子類對(duì)象指定為超類對(duì)象時(shí)會(huì)發(fā)生什么情況

HUX布斯 2022-09-14 16:02:44
所以我有一個(gè)關(guān)于超類A和子類B的問題,其中A有2個(gè)公共變量,B有1個(gè)以上的公共變量。我看到了這段代碼:A a = new A(); B b = new B(); a = b;最后一行有什么作用?我真的不明白當(dāng)你在繼承關(guān)系中的2個(gè)類之間使用“=”時(shí)會(huì)發(fā)生什么。
查看完整描述

2 回答

?
牧羊人nacy

TA貢獻(xiàn)1862條經(jīng)驗(yàn) 獲得超7個(gè)贊

這是一個(gè)簡(jiǎn)單的任務(wù)。 是賦值運(yùn)算符。=

讓我們明確以下幾點(diǎn)。

  1. 在 Java 中,當(dāng)創(chuàng)建對(duì)象并且可以通過參考。引用對(duì)象。

  2. 一次一個(gè)引用只能引用一個(gè)對(duì)象

  3. 類型 X 的引用可以引用類型 X 的對(duì)象或任何子類型(在 X 是類的情況下進(jìn)行擴(kuò)展,如果 X 是接口,則實(shí)現(xiàn))。

現(xiàn)在假設(shè)有兩個(gè)類,使得 .SuperSubSub extends Super

 SuperClass reference = new SubClass();

這是允許的,因?yàn)樽宇惱^承自超類。上面我們有一個(gè)在堆中創(chuàng)建的子類類型的對(duì)象,它可以通過訪問。名為reference

請(qǐng)注意,類型的引用不能引用 的對(duì)象。讓我們簡(jiǎn)要地看看為什么會(huì)這樣?如果允許對(duì)類型的引用引用類型的對(duì)象,那么它將被允許調(diào)用由定義的其他方法(函數(shù)),這將繼承所有方法,并且還定義了幾個(gè)附加方法)?,F(xiàn)在,這會(huì)使應(yīng)用程序崩潰,因?yàn)?的對(duì)象 僅在 中定義了方法,但沒有 由 定義的任何其他方法。因此,編譯器在編譯時(shí)會(huì)阻止它。這是一個(gè)編譯時(shí)錯(cuò)誤,使類型的引用引用類型的對(duì)象SubClassSuperClassSubClassSuperClassSubClassSubClassSuperClassSuperClassSuperClassSubClassSubClassSuperClass

現(xiàn)在讓我們看一下問題中提到的代碼

 SuperClass a = new SuperClass();
  SubClass b = new SubClass();
 a = b;

第 1 行:我們有一個(gè)超類的對(duì)象,由一個(gè)名為a

第2行:我們有一個(gè)子類的對(duì)象,由一個(gè)名為子類的變量引用b

第 3 行:我們有一個(gè)賦值,其中 被分配來引用 與 所指的對(duì)象相同的對(duì)象。因此,現(xiàn)在我們有兩個(gè)引用,都引用了在第 2 行創(chuàng)建的類型的對(duì)象。在第 1 行創(chuàng)建的 typer 對(duì)象(使用問題中提到的當(dāng)前可用代碼)沒有任何引用,因此它符合垃圾回收的條件。abSubClassSuperClass


查看完整回答
反對(duì) 回復(fù) 2022-09-14
?
蝴蝶刀刀

TA貢獻(xiàn)1801條經(jīng)驗(yàn) 獲得超8個(gè)贊

沒有任何“反應(yīng)”。變量“b”引用的對(duì)象是單個(gè)對(duì)象。它同時(shí)是 B 的實(shí)例和 A 的實(shí)例。

當(dāng)你執(zhí)行賦值時(shí),先前由變量'a'引用的對(duì)象變得不可訪問。對(duì)這一舊對(duì)象的考慮不參與這一討論。a = b

賦值后,“a”和“b”引用到同一對(duì)象。對(duì)象未更改。它仍然是 B 的實(shí)例和 A 的實(shí)例。

也許您理解的障礙是對(duì)象和引用這些對(duì)象的變量之間的區(qū)別?


查看完整回答
反對(duì) 回復(fù) 2022-09-14
  • 2 回答
  • 0 關(guān)注
  • 154 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)