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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Day11多态部分-2 【1.2 多态的前提】

發布時間:2024/6/3 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Day11多态部分-2 【1.2 多态的前提】 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

【1.2 多態的前提】*****

  • 1.類與類/接口interface 存在關系,

    要不就繼承extends,要不就實現implements;

    2.子類存在重寫

    3.父類引用 指向 子類對象 ? ??

package Day11;public class Test_02 { /* Animal1 c = new Cat1(); //有個人來給你爸爸去講課 講電工培訓,但爸爸不在,我又想掙這錢,就易容成我爸爸* show(c);//然后去講課,我只會講java培訓,問講的是什么課?,還是Java因為實際講課人是我* Dog1 dd =(Dog1 ) d;//現在女友來找逛街,但我此時還是易容成我爸爸的樣子,現在偷偷要去卸妝才出來* dd.show2();//然后和女友逛街*//*一個兒子經過化妝成了父親 但他實際上還是兒子 那么他做的事(行為) 是 兒子做的呢 還是父親做的呢? 顯然還是兒子化了妝的兒子 必須先從'父親'卸妝 成 兒子 才能干兒子特有的事(行為)*/public static void main(String[] args){Animal1 c = new Cat1(); Animal1 d = new Dog1();Animal1 p = new Pig1();show(c);show(d);show(p);//想要調用其他特有方法,要從動物轉回貓,才能調用子類的方法-->強制轉換//沒有繼承父類的關系,因此只能通過 向下轉型 來實現顯示//父類引用 轉成 子類類型:向下轉型Cat1 cc = (Cat1) c; //語法和 short s = (short ) i 基本數據類型強制轉換相似cc.show1();Dog1 dd =(Dog1 ) d;dd.show2();Pig1 pp =(Pig1) p;pp.show3();/*Animal a10 = new Animal();Cat c = (Cat)a10;錯誤!!不能強制將一個動物轉成貓不能將父類對象 轉成 子類類型多態 轉的是父類引用 指向了自己的子類對象時 該引用可以被提升 也可以被強轉多態 至始至終 都是子類對象在做著變化(指向和引用都是子類)*/}public static void show(Animal1 tmp){tmp.eat(); } }abstract class Animal1 {abstract void eat(); }class Cat1 extends Animal1{public void eat(){System.out.println("貓吃魚");}public void show1(){System.out.println("貓抓老鼠");} } class Dog1 extends Animal1{public void eat(){System.out.println("狗吃骨頭");}public void show2(){System.out.println("狗看護家");}} class Pig1 extends Animal1{public void eat(){System.out.println("豬吃飼料");}public void show3(){System.out.println("豬拱地");} }

總結

以上是生活随笔為你收集整理的Day11多态部分-2 【1.2 多态的前提】的全部內容,希望文章能夠幫你解決所遇到的問題。

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