java的多态代码例子_java多态例子,java多态代码实例
下面要給大家分享的是一個多態經典案例,一起來看看這個java多態簡單例子吧。/*多態的好處:提高了代碼的維護性和擴展性;
弊端:父類不能使用子類的特有功能。
要用子類的特有功能,可以:
A:創建子類對象,調用方法即可(不合理,太占內存);
B:把父類的引用強制轉換為子類的引用(向下轉型);
向上轉型:Fu?f?=?new?Zi();
向下轉型:Zi?z?=?(Zi)?f;//要求該f必須是轉換為Zi的。
*/
class?Animal
{
public?void?eat()
{
System.out.println("吃飯");
}
}
class?Dog?extends?Animal
{
public?void?eat()
{
System.out.println("狗吃肉");
}
public?void?lookDoor()
{
System.out.println("狗看門");
}
}
class?Cat?extends?Animal
{
public?void?eat()
{
System.out.println("貓吃魚");
}
public?void?playGame()
{
System.out.println("捉迷藏");
}
}
public?class?DuoTaiTest
{
public?static?void?main(String[]?args)
{
//定義為狗
Animal?a?=?new?Dog();
a.eat();
System.out.println("------------");
//還原成狗
Dog?d?=?(Dog)?a;
d.eat();
d.lookDoor();
System.out.println("-------------");
//變成貓
a?=?new?Cat();
a.eat();
System.out.println("-------------");
//還原成貓
Cat?c?=?(Cat)?a;
c.eat();
c.playGame();
}
}
運行的結果
上面這個簡單的java多態舉例,你都仔細的看了嗎?你還想了解更多的java經典實例嗎?請繼續關注奇Q工具網的java實例欄目來了解吧。
推薦閱讀:
總結
以上是生活随笔為你收集整理的java的多态代码例子_java多态例子,java多态代码实例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 恶臭数字论证器 -- 简化版
- 下一篇: 书翻页turn.js踩的坑