国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

對象的轉(zhuǎn)型

2019-11-14 21:40:41
字體:
供稿:網(wǎng)友
對象的轉(zhuǎn)型

對象的轉(zhuǎn)型分為向上轉(zhuǎn)型和向下轉(zhuǎn)型

向上轉(zhuǎn)型:將子類的對象賦值給父類的引用,如

Student s = new Student();Person P = s ;

Student是Person的子類(繼承)。首先聲明了student的引用s,再同new關(guān)鍵字調(diào)用了構(gòu)造函數(shù)生成student的對象,并把對象賦值給引用s,s指向?qū)ο蟆T侔裺賦值給Person類型的引用p

class Person{      String name;      void introduce(){           System.out.
class Student extends Person{      int age;      void study(){           System.out.println("我正在學(xué)習(xí)");      }          void introduce(){           super.introduce();           System.out.println("我" + age);      }}
class Test{      public static void main(String args[]){           Student s = new Student();           Person p = s;           //等同于 Person p = new Student();           p.name = "lisi";           p.age = 20;           p.study();      }}

錯誤原因:根據(jù)上圖所示,雖然s和p指向同一個對象,但一個引用能夠調(diào)用的成員(變量和函數(shù)),取決于這個引用的類型,如p是Person的引用,p能調(diào)用的成員取決于Person中所定義的成員。

在父類中有個方法A,在子類中對方法A進(jìn)行復(fù)寫后(父類方法A被覆蓋),一個引用所調(diào)用的方法,取決于這個引用所指向的對象。p指向Student對象,p調(diào)用introduce(),結(jié)果如下。

p.introduce();

向下轉(zhuǎn)型:將父類的對象賦值給子類的引用,如

Student s1 = new Student();Person P = s1 ;Student s2 = (Student)p;//強制類型轉(zhuǎn)換

向下轉(zhuǎn)型的前提首先進(jìn)行向上轉(zhuǎn)型。父類對象的引用無法直接轉(zhuǎn)型為子類的類型


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 达拉特旗| 湟中县| 乌鲁木齐市| 轮台县| 海阳市| 井陉县| 大宁县| 北川| 双牌县| 山西省| 海伦市| 乐都县| 子长县| 红原县| 柳河县| 天峨县| 建水县| 增城市| 白银市| 高清| 黎平县| 西峡县| 南京市| 六安市| 托克逊县| 澳门| 新源县| 池州市| 东乡| 星子县| 关岭| 临朐县| 瓦房店市| 满洲里市| 扎赉特旗| 始兴县| 邢台县| 文化| 天门市| 承德市| 赤壁市|