A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© runner 中级黑马   /  2016-5-19 21:58  /  380 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

多态

        * 概述:        就是同一个事物在不同时刻表现出来的不同状态
       
        * 前提

                ** 需要有继承关系
                ** 需要有方法重写,其实没有方法重写也是可以的,但是没有意义
                ** 需要有父类的引用指向子类对象
                       
                        举例:        Fu f = new Zi() ;
       
        * 多态中成员访问的特点:

                ** 成员变量                                编译看左边 , 运行看左边
                ** 构造方法                                子类在初始化的时候都需要默认的访问父类无参的构造方法对父类的数据进行初始化
                ** 成员方法
                               
                                ** 静态成员方法                        编译看左边 , 运行看左边
                                ** 非静态的成员方法                编译看左边 , 运行看右边

        * 多态的好处
               
                ** 提高了代码的维护性
                ** 提高了代码的扩展性

        * 多态的弊端
               
                ** 无法访问子类特有的功能

                如果想使用子类特有的功能,就需要向下转型
               
                向下转型:
                       
                        * 概述:        就是把父类的引用强制转换成子类的引用
                        * 格式:        子类名 对象名 = (子类名)父类的引用 ;
               
                向上转型:
                       
                        * 概述: 就是把父类的引用指向子类对象,就是多态的形式

        * 孔子装爹案例
        * 多态的内存图
        * 多态的练习

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马