Java基础入门笔记-多态
生活随笔
收集整理的這篇文章主要介紹了
Java基础入门笔记-多态
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
多態(tài)是設計上的一個術語。(polymorphism)
在Java里,多態(tài)是指以下語法現(xiàn)象:
重載OVerload:方法允許重名;
重寫Override:允許子類重寫父類方法;
泛型(模版):比如ArryList;
子類與父類的類型轉換
1.子類轉成父類:
ApplePie p1=new ApplePie();
Pie p2=p1; //類型轉換:ApplePie->Pie
2.父類轉成子類類型:
ApplePie p3=(ApplePie)p2;
注意:這個有時可以,有時不可以,這里可以是因為p2實際指向的對象是ApplePie,所以可以轉換。
如何理解多態(tài)
package my;public class HelloWorld {public static void main(String[] args){ Child a=new Child();Human b=a;a.information();b.information();Human c=new Child();c.information();Object d=new Human();}}
Human.java package my;public class Human {public int weight;public int height;public void information() {System.out.println("Human weight is "+weight+", height is "+height);} }
在Java里,多態(tài)是指以下語法現(xiàn)象:
重載OVerload:方法允許重名;
重寫Override:允許子類重寫父類方法;
泛型(模版):比如ArryList;
子類與父類的類型轉換
1.子類轉成父類:
ApplePie p1=new ApplePie();
Pie p2=p1; //類型轉換:ApplePie->Pie
2.父類轉成子類類型:
ApplePie p3=(ApplePie)p2;
注意:這個有時可以,有時不可以,這里可以是因為p2實際指向的對象是ApplePie,所以可以轉換。
如何理解多態(tài)
如下所示:
Child.java
package my;public class Child extends Human {int a;int b;public void information() {System.out.println("The Child a is "+a+", b is "+b);}}
package my;public class HelloWorld {public static void main(String[] args){ Child a=new Child();Human b=a;a.information();b.information();Human c=new Child();c.information();Object d=new Human();}}
Human.java package my;public class Human {public int weight;public int height;public void information() {System.out.println("Human weight is "+weight+", height is "+height);} }
所有對象都是Object
所以:Object x=new MyVideoFile()
總結
以上是生活随笔為你收集整理的Java基础入门笔记-多态的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 数据结构-图的进阶代码
- 下一篇: Java基础入门笔记-构造方法的继承