码迷,mamicode.com
首页 > 编程语言 > 详细

Java多态小总结

时间:2014-07-07 00:30:44      阅读:301      评论:0      收藏:0      [点我收藏+]

标签:style   blog   java   color   io   div   

多态,又可以称为动态绑定,即在运行时确定类型,比如:

 1 class A {
 2   void draw(){
 3   //输出“A”   
 4  }  
 5 }
 6 class B {
 7     void draw(){
 8     //输出“B”
 9 }
10 
11 }

这种关系里,如果调用A a = new B();

此时,被称为向上转型,a的类型可能在很早之前被生命,而在这时候被明确指明是其子类型,

我们如果要去调用draw()方法的时候,会调用输出“B”,这样,便是Java中的“多态”。我们称其为“向上转型”。

 

但是,如果B中还有其他方法的时候,A型的a是不能调用其方法的,必须将a通过强制类型转换转成B型才可以调用。我们称其为“向下转型”。

与此同时,如果是一个A a = new A();这种正常的实例化的时候,对其进行向下转型,在Eclipse中和编译是不报错的,但是程序运行起来后会报一个ClassCastException错误,这种在程序运行期间进行类型检查的机制称为“RTTI”(Runtime Type Identify,运行时类型识别)。

Java多态小总结,布布扣,bubuko.com

Java多态小总结

标签:style   blog   java   color   io   div   

原文地址:http://www.cnblogs.com/RainFool/p/3822411.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!