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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© luguoyuanf 中级黑马   /  2013-3-28 21:02  /  1354 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

         4.3.1接口概述(implements)
                            抽象类中的所有方法都是抽象的,这个类可以用另外一种方式类定义-接口
                            抽象类中只包含常量和方法的定义,而没有变量和方法的实现
                            特点:
                            接口里的变量默认就有publicstaic final标识,接口中的变量是全局静态常量
                            接口中的成员都是公共权限
                            继承和实现区别:
                            1,继承只能单继承
                            2,实现可以多实现
                            3,继承后子类必须覆盖父类接口中的抽象方法
                            4,实现后子类必须覆盖父类的接口中的抽象方法
                            5,实现的出现,避免的单继承的局限性
                            接口思想:
                            降低耦合性,提高扩展性,后期可维护性大大增加
         4.3.2面向对象的多态性
                            定义:
                            一个事物具备的多种形态
                            体现:
                            父类或者接口的引用指向自己的子类对象
                            优势:
                            代码的复用性提供,程序的扩展性提高,后期可维护性提高
                            弊端:
                            1)前提是抽取了父类,后期不知道有什么样的子类
                            2)多台下只能调用子父类的公共方法
                            多态子类和父类之间的细节:
                            1)成员变量:
                            编译时期参考引用型变量所属的类中是否有这个成员变量,没有则编译失败.
                            运行时期参考引用型变量所属的类中
                            2)成员函数:
                            编译时期参考引用型变量所属的类中是否有这个成员函数,没有则编译失败.
                            运行时期参考子类对象中的方法,此时虚拟机动态绑定到了子类对象中子类中覆盖了父类中的方法.
                            3)静态成员变量:
                            编译时期参考引用型变量所属类中有没有这个静态成员变量,有就编译通过.
                            运行时期参考引用型变量所属类
                            4)静态成员函数
                            编译时期参考引用型变量所属的类,有没有这个静态方法,有就编译通过
                            运行时期参考引用型变量所属的类
                            简单记忆法:
                            只有非静态成员函数编译看左边,运行看右边,其他情况编译运行都看左边.
                            模板方法设计模式(记录程序运行时间)
                            1)父类中,不知道需要统计什么程序运行时间
                            2)提供了一个抽象方法,交由子类去实现
                            3)统计的程序是由子类覆盖而来
                            4)父类只做一件事情,就是对外暴露一个方法
                            5)子类延迟加载
                            6)扩张性增加

3 个回复

倒序浏览
顶一下   加油
回复 使用道具 举报
康嘉 发表于 2013-3-28 22:16
顶一下   加油

感谢支持!
回复 使用道具 举报
王浩威 来自手机 中级黑马 2013-3-29 10:41:32
板凳
牛仔裤  皮实
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马