Java SE程序设计04_第4章 类之间的关系.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
类之间的关系 - * - 理解继承和多态的概念 掌握继承、多态的实现和使用 掌握super、final关键字的使用 掌握Object类 了解依赖、关联、聚合、组成关系 目标 - * - 类间关系 在面向对象的系统中,通常不会存在孤立的类,类之间、对象之间总是存在各种各样的关系,按照UML(Unified Modeling Language,统一建模语言)规范,类之间存在六种关系:继承 、实现 、依赖 、关联 、聚合 、组成 。 UML的六种关系中,继承和实现是一种纵向的关系,而其余四种是横向关系。其中关联、聚合、组成关系在代码上是无法区分的,更多的是一种语义上的区别。 - * - 继承-1 关于继承 在Java中,被继承的类叫父类(parent class)或超类(super class),继承父类的类叫子类(subclass)或派生类(derived class)。 在Java中,关键字“extends”表示继承,后面紧跟父类的类名,格式如下 : access modifiers class SubClass extends SuperClass{ //...... } 例如: public class Cat extends Animal { ...... } - * - 继承-2 继承的实例分析 在一个学校的人事管理系统中,要存储教师和学生的信息,现采用面向对象思想分析得到教师类和学生类。其属性如下所示: 教师类(Teacher) 学生类(Student) 姓名 name 姓名 name 年龄 age 年龄 age 性别 gender 性别 gender 工资 salary 成绩 score 所属院系 department 年级 grade 。 根据继承的设计思想,完全可以将教师和学生类的相同属性抽象出来,作为父类,然后为其子类添加差异的属性 - * - 继承-3 类的继承关系图 - * - 继承-4 代码实现继承关系 public class Person { private String name;// 姓名 private int age;// 年龄 private String gender;// 性别 ……//省略get和set方法 } class Teacher extends Person { private float salary;// 薪酬 private String department;// 部门 ……//省略get和set方法 } class Student extends Person { private int[] score;// 成绩 private String grade;// 年级 ……//省略get和set方法 } Java中只支持单继承, 即一个类只能继承一个父类,而不能继承多个类。 - * - 继承-5 演示在继承关系中构造方法的调用次序 public class Base { protected int a; public Base() { a = 20; System.out.println(In Base constructor!); } public static void main(String[] args) { Son obj = new Son(); obj.print(); } } class Son extends Base { int b; public Son() { b = 100; System.out.println(In Son constructor!); } public void print() { System.out.println(a: + a + ,b: + b); } } 执行结果如下: In Base constructor! In Son constructor! a: 20,b: 100 - * - 多态-1 重写 当一个子类继承了一个父类时,可以在子类中直接使用父类的属性和方法。如果父类的方法无法满足子类的需求,则可以在子类中对父类的方法进行改造,也称作重写(override)。重写是Java多态性的另一种体现。 重写的原则 重写的方法的签名必须要和被重写的方法的签名完全匹配; 重写的方法的返回值必须和被重写的方法的返回一致或者是其子类; 重写的方法所抛出的异常必须和被重写方法的所抛出的异常一致,或者是其子类; 私有方法不能被重写 子类重写父类方法的过程中,可访问性只能一样或变的更公开。 - * - 多态-2 演示在继承关系中重写 public class Base { public v

文档评论(0)

autohhh + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档