Java中的多态

来源:互联网 发布:网络电视怎么放不出来 编辑:程序博客网 时间:2024/06/08 09:54

多态是面向对象的三大特征值之一

1)继承,方法的重写

(2)对象的多态:

  1. 向上转型:子类实例转为父类实例

                  格式:父类父类的对象=子类实例

                    父类的引用指向子类对象

                2.向下转型:将父类实例转为子类实例---可解决因多态不能使用子类独有的成员方法的问题

                  格式:子类  子类的对象=(子类)父类实例

                      父类引用转换为子类对象

    【注】对修改关闭,对扩展开放(可以增加一个子类而不必修改源代码)

    * 【多态】 一个对象在不同的环境下具有不同的形态,这种情况就称之为多态

     *

     *    1.父类的引用类型变量指向子类的对象

     *    2.接口的引用类型变量指向(遵从)接口的类对象

     * 【多态的注意事项】

     *    1.多态情况下,父类的引用不能访问子类特有的成员变量和成员方法

     *    2.多态情况下,父类和子类中拥有同名的成员变量,那么使用的是父类的成员变量

     *    3.多态情况下,父类和子类中有同名的成员方法,这里使用的是子类的成员方法

     *    4.多态情况下,父类和子类中有同名的静态成员方法,这里使用的是父类的静态方法-----静态方法可以被继承但是不能被重写

     * 【口诀】成员变量,静态方法看左边。非静态方法:编译看左边 ,运行看右边