JavaSE第三讲-面向对象三大特性-封装、继承、多态.ppt

上传人:max****ui 文档编号:6358841 上传时间:2020-02-23 格式:PPT 页数:22 大小:484.31KB
返回 下载 相关 举报
JavaSE第三讲-面向对象三大特性-封装、继承、多态.ppt_第1页
第1页 / 共22页
JavaSE第三讲-面向对象三大特性-封装、继承、多态.ppt_第2页
第2页 / 共22页
JavaSE第三讲-面向对象三大特性-封装、继承、多态.ppt_第3页
第3页 / 共22页
点击查看更多>>
资源描述
JavaSE 第三讲 面向对象三大特性 第一节 Encapsulation 封装 封装的三大好处 专业分工隐藏信息 实现细节访问权限控制 Package 包 功能 将一组java文件组织在一起强内聚弱耦合创建独一无二的包名Java包的命名规则全部使用小写字母 包括中间的字也是如此按照惯例 package名称的第一部分是反顺序的类的创建者的Internet域名 导入包 import Demo Data java TestImport java AccessControl 访问控制 属性和方法的访问控制public访问权限 任何地方的类都可以访问到 protected访问权限 在同一个包中的类可以访问 包外的子类可以继承 但不能访问 默认包访问权限 在同一个包中的类可以访问到 private访问权限 只能在定义它的类里访问 类 普通类 非内部类 的访问控制public访问权限 任何地方的类都可以访问到 默认包访问权限 在同一个包中的类可以访问到 AccessControl 访问控制 方法的访问控制public访问权限 任何地方的类都可以访问到protected访问权限 在同一个包中的类可以访问 包外的子类可以继承 但不能访问 默认包访问权限 在同一个包中的类可以访问到private访问权限 只能在定义它的类里访问 protected Parent java Child java private IceCream java Sundae java 第二节 Inheritance 继承 Java语言规范对继承的定义 定义一个父类class父类名 定义一个子类class子类名extends父类名 我们就说子类继承父类 正确理解继承 子类是父类更加详细的分类是一种一般化与特殊化的关系Java的标准根源类java lang Object进行继承继承的目的是实现代码复用Java只支持单根继承只是采用它的形式并在其中添加新代码 对父类进行扩展 表示 is a 关系 继承的含义 子类自动拥有父类的属性和行为 一般化的体现 目的就是达到代码的复用 子类可以定义自己特有的属性和行为 特殊化的体现 目的就是达到功能的增加 子类可以把从父类继承下来的行为用自己的方式重新实现 通过方法重写来达到 理解继承时要注意以下几点 不能简单地把继承理解成父子关系设计的时候 如果需要把在父类中定义的属性和行为让子类能够继承 应该把访问权限适当公开继承的时候要注意构造方法的定义 Override 方法重写 方法覆盖 概念子类里面如果有个某个方法的名字 返回类型 形式参数同父类中的某个方法相同的时候 我们称子类把父类的方法给重写了注意在子类与父类之间表现出来 注意跟方法重载区别开来 子类重写了父类的某个方法时 不能降低访问权限子类的方法签名必须与父类的方法签名一样 Demo TestEmp java Overloading与Override 比较Overloading OverrideOverloading 方法名相同 参数列表不同Override 不同类中 方法名相同 参数列表也相同 方法签名相同 Overridejava lang Object toString 方法 Demo Apple java super关键字 概念代表当前对象的父对象的引用用法 直接父类对象的引用 访问父类的成员变量和方法显式的调用父类的构造函数注意由JVM自己处理 Demo TestSuper java 实例的创建顺序 第一步 超类成员变量 超类初始化块 按排列顺序 第二步 超类构造方法第三步 子类成员变量 子类初始化块 按排列顺序 第四步 子类构造方法注 按排列顺序是指哪个代码写在前面就先初始化谁 Upcast 向上转型 和Downcast 向下转型 upcast是由系统自动完成的 是安全的downcast是手工完成的 强制转型 不一定安全RTTI run timetypeidentification 运行期类型识别 使用instanceof关键字消除downcast的不安全性 Demo Student java 第三节 Polymorphism 多态 对多态的正确理解 相同的事物 调用相同的方法 参数也相同 但是表现出来的行为却不同多态通过分离 做什么 和 怎么做 多态能够改善代码的组织结构和可读性 使得程序有良好的扩展性多态也称为动态绑定 dynamicbinding 后期绑定 latebinding 或运行时绑定 run timebinding 多态的三个含义 子类都能以父类的身份出现 里氏代换原则 子类以父类的身份出现 但是做事情时 还是用自己的方式来实现子类以父类的身份出现时 自己特有的属性和行为将不能使用 Demo TestMan java 多态的运用 多态参数多个方法的参数 具有相同的父类 则以父类的名义来声明方法的参数 由于子类都能以父类的身份出现 所以方法只要定义一次就可以适应各个子类了异类集合多个变量 具有相同的父类 则以父类的名义来声明集合的类型 由于子类都能以父类的身份出现 所以集合中可以保存各个子类的实例 Demo Music java ThankYou Q ATime
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!