多态和抽象

来源:互联网 发布:网络编辑发展前景 编辑:程序博客网 时间:2024/06/07 14:25

多态

概念:相同的行为,不同的实现。

分类:1.静态多态,编译期,即已知方法,执行效果。2.动态多态,编译器未知,运行期根据绑定对象的不同,有不同的效果。

实现:1.静态多态,使用重载实现。2.动态多态,使用动态绑定和方法重写实现。


在java中使用动态绑定和重写机制来实现多态,需要掌握三个基础技术概念:

1.向上转型技术:一个父类的引用变量可以指向不同的子类对象,或者说一个子对象可以被当作一个父类类型。

2.instanceof关键字:instanceof关键字用于判断运行时对象的真正类型。

3.动态绑定技术:运行时根据父类引用变量所指对象的实际类型执行相应的子类方法。


向上转型和向下转型:当从低精度数据类型向高精度数据类型转换时实行自动转换,这种类型转换技术称为向上转型;当从高精度数据类型向低精度数据类型转换时,需要使用强制类型转换符,这种类型转换技术称为向下转型。

对于引用数据类型,这种转换技术依然适用,在父类和子类的继承层次关系中,沿着子类向父类向上转型时自动转换,而从父类向子类必须使用强制类型转换才能实现向下转型。





0 0
原创粉丝点击