Cheug's Blog

当前位置:网站首页 / JAVA / 正文

多态

2019-03-15 / JAVA / 880 次围观 / 0 次吐槽 /

什么是多态(polymorphic)

                多态就是事物存在的多种形态


Java中存在多态的前提条件

                要有继承关系

                要有方法重写

                要有父类引用指向子类对象


            多态访问成员变量-编译看左边(父类),运行看左边(父类)

            多态访问成员方法-编译看左边(父类) ,运行看右边(子类)

            多态访问静态方法-编译看左边(父类) ,运行看左边(父类) //- 这种写法是不成立,实际使用中可以使用类名访问


多态中向上转型和向下转型

                       向上转型:Person p = new SupperMan();

                       向下转型:SupperMan sm = (SupperMan)p;

                       注意:向下转型时,父类的真实对象必须是子类对象,否则会有类型转换异常ClassCastException。


多态的好处和弊端

                       好处:方便维护,扩展性好

                       弊端: 在方法中使用父类当作参数时,方法内部不能使用父类访问子类的属性和方法


Powered By Cheug's Blog

Copyright Cheug Rights Reserved.