Java基础入门笔记-多态
2018-01-05 22:58
225 查看
多态是设计上的一个术语。(polymorphism)
在Java里,多态是指以下语法现象:
重载OVerload:方法允许重名;
重写Override:允许子类重写父类方法;
泛型(模版):比如ArryList;
子类与父类的类型转换
1.子类转成父类:
ApplePie p1=new ApplePie();
Pie p2=p1; //类型转换:ApplePie->Pie
2.父类转成子类类型:
ApplePie p3=(ApplePie)p2;
注意:这个有时可以,有时不可以,这里可以是因为p2实际指向的对象是ApplePie,所以可以转换。
如何理解多态
如下所示:
Child.java
HelloWorld.java
Human.java
运行结果如下:
所有对象都是Object
所以:Object x=new MyVideoFile()
在Java里,多态是指以下语法现象:
重载OVerload:方法允许重名;
重写Override:允许子类重写父类方法;
泛型(模版):比如ArryList;
子类与父类的类型转换
1.子类转成父类:
ApplePie p1=new ApplePie();
Pie p2=p1; //类型转换:ApplePie->Pie
2.父类转成子类类型:
ApplePie p3=(ApplePie)p2;
注意:这个有时可以,有时不可以,这里可以是因为p2实际指向的对象是ApplePie,所以可以转换。
如何理解多态
如下所示:
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); } }
HelloWorld.java
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 从零开始,学习笔记之基础入门<抽象类_接口_多态>(十三)
- java 从零开始,学习笔记之基础入门(开始)
- Java基础笔记二继承、异常、多态
- java 从零开始,学习笔记之基础入门<运算符表达式和流程控制>(六)
- java 从零开始,学习笔记之基础入门<封装类>(十一)
- java 从零开始,学习笔记之基础入门(一)
- java 学习笔记(入门篇)_java的基础语法
- java 从零开始,学习笔记之基础入门<异常>(十五)
- java 从零开始,学习笔记之基础入门<IO流>(十八)
- java 从零开始,学习笔记之基础入门<数组列表(ArrayList)>(九)
- java 从零开始,学习笔记之基础入门<线程及实例分析>(十九)
- 学习笔记――Java入门基础
- java 从零开始,学习笔记之基础入门<集合>(十六)
- java 从零开始,学习笔记之基础入门<Static>(十二)
- Java 基础一些代码练习笔记(多态2)
- java 从零开始,学习笔记之基础入门<数据类型的转换>(五)
- java 从零开始,学习笔记之基础入门<集合>(十六)
- 【百度文库课程】Java语言基础与OOP入门学习笔记一
- 【Java学习笔记】基础知识学习10【继承与多态】
- java 从零开始,学习笔记之基础入门<数组>(七)