JAVA-ch5类的重用--继承.ppt

  1. 1、本文档共35页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
JAVA-ch5类的重用--继承

5 类的重用 5.1 类的继承 5.2 Object类 5.3 抽象类 5.1 什么是继承 继承的概念 由一个已有的类定义一个新类,称为新类继承已有的类。 父类是所有子类的公共属性及方法的集合,子类则是父类的特殊化。 继承介于类之间,而不是对象之间。 5.1 什么是继承 基类(base class) 也称超类(superclass) 是被直接或间接继承的类 派生类(derived-class) 也称子类 (subclass) 继承其他类而得到的类 继承所有祖先的状态和行为 派生类可以增加成员变量和方法 派生类也可以覆盖(override)继承的方法 类的继承性 定义继承的类 声明继承的类 [修饰符] class 类 [extends 父类] public class StudentScore extends Student { public void sort( Student [] stu) { …… } } 在一个公司中,有普通员工(Employees)及管理者(Magagers)两类人员 职员对象(Employees)可能有的属性信息包括 员工号(employeeNumber) 姓名(name) 地址(address) 电话号码(phoneNumber) 管理者(Managers)除具有普通员工的属性外,还可能具有下面的属性 职责(responsibilities) 所管理的职员(listOfEmployees) 可设计Employee及Manager两个类,将Manager类作为Employee类的子类 实例 Employee与Manager的类图 实例 //父类Employee class Employee { int employeeNumbe ; String name, address, phoneNumber ; } //子类Manager class Manager extends Employee { //子类增加的数据成员 String responsibilities, listOfEmployees; } 定义继承的类 子类对象对父类成员的访问权限 子类对父类的私有成员(private)没有访问权限; 子类对父类的公有成员(public)和保护成员(protected)具有访问权限。 子类对父类中缺省权限成员的访问分两种情况,对同一包中父类的缺省权限成员具有访问权限,而对不同包中父类的缺省权限成员则没有访问权限。 定义继承的类 公有(及保护)成员的继承 子类的对象可以使用其父类中声明为公有(及保护)的属性和方法,就如同在其自己的类中声明一样 。 public class Person { public String name; public String getName() { return name; } } public class Employee extends Person { public int employeeNumber; public int getEmployeeNumber() { return employeeNumber; } } public class Manager extends Employee { public String responsibilities; public String getResponsibilities() { return responsibilities; } } public class Exam4_2Test { public static void main(String args[]){ Employee li = new Employee(); li.name = Li Ming; li.employeeNumber = 123456; System.out.println(li.getName()); System.out.println(li.getEmployeeNumber()); Manager he = new Manager(); he.name = He Xia; he.employeeNumber = 543469; he.responsibilities = Internet project; System.out.println(he.getName());

文档评论(0)

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

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

1亿VIP精品文档

相关文档