java 对象的多态性

 1.对象的多态性指的是:

            (1)向上转型: 子类(B)对象------》父类(A)对象 (程序中的体现是:A a = new B() )

            (2)向下转型: 父类对象------》子类对象 (程序中:A a = new B()  ;  B b = (B) a ) 

   2.子类实例化的对象其实既是子类的对象,又是父类的对象,而父类定义的对象只是父类的对象。所以向下转型的时候必须使用 子类实例化 对象。

   3.如果对象发生了向上转型,父类对象 a 调用的一定是被子类覆写过的方法,并且不能调用子类自己定义的其他方法(覆写方法外的方法)。

   4.如果对象发生了向下转型,子类对象b可以调用自己定义的方法,也可以调用父类的方法,如果父类方法已被该子类覆写,则对象调用的仍然是子类覆写后的方法。

  

        

原文地址:https://www.cnblogs.com/summer323/p/4669934.html