chapter05 类的继承与派生.ppt

  1. 1、本文档共31页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第五章 类的继承和派生 Inheritance/extends/derive 本章知识点 继承概念和作用 子类的声明 类成员修饰符与继承的关系 理解父类和子类的关系,在子类中使用父类成员(方法) 继承机制下,对象创建的过程(构造方法的使用,super调用) 子类对父类方法的重写(super调用) 5.1 继承的概念和软件的重用性 继承:从已有的类中派生出新的类。 新的类能吸收已有类的数据属性和行为。 并能扩展新的能力。 父类是子类的一般化,子类是父类的特例化(具体化)。 父类也称为超类或基类。 类之间的关系 “is-a” 关系: 类之间是继承的关系。 “has-a”关系: 类之间是组合的关系(前4.9节)。 5.1 继承的概念和软件的重用性 继承分类 单继承:一个子类最多只能有一个父类。 多继承:一个子类可有两个以上的父类。 说明:Java类只支持单继承,而接口支持多继承。Java多继承的功能则是通过接口方式来间接实现的。 继承使软件的代码得到重用,提高了系统的效率。 在继承关系中,子类通过吸收父类的数据(属性)和方法(行为),并增加新功能或修改已有功能来创建新类。 5.1 继承的概念和软件的重用性 Object类:Java中所有类的父类,定义和实现了Java系统下所有类的共同行为,所有的类都是由这个类继承、扩充而来的。 认识Object类中的方法 5.2 子类的定义 子类定义的一般格式 [类修饰符] class 子类名 extends 父类名{ 成员变量定义; 成员方法定义; } 在子类的定义中,用关键字extends来明确指出它所继承的父类。 【例5-1】 通过继承来定义子类。 package chap5.example5_1; public class Automobile { private String number; public void setNumber(String number){ this.number = number; } void showNumber(){ System.out.println(车牌号:+number); } } 【例5-1】 通过继承来定义子类。 package chap5.example5_1; public class Truck extends Automobile { private double capacity; public void setCapacity(double capacity){ this.capacity = capacity; } public void showCapacity(){ System.out.println(卡车载货容量:+capacity+吨); } } 【例5-1】 通过继承来定义子类。 package chap5.example5_1; public class TruckTest { public static void main(String[] args) { Truck tc=new Truck(); tc.setNumber(京E 88888); tc.setCapacity(10); tc.showNumber(); tc.showCapacity(); } } 5.3 作用域与继承 成员访问控制修饰符在继承中的性质 public、private、package、protected 父类的public成员可以在父类中使用,也可以在子类使用。程序可以在任何地方访问public父类成员。 父类的private成员仅在父类中使用,在子类中不能被访问。 父类的protected成员可在子类被访问,无论子类与父类是否存储在同一个包下。 父类的package成员可在同一包的子类中被访问。 5.3 作用域和继承 成员访问控制修饰符的具体应用 父类中属性的修饰符:子类应依赖于父类的服务,而不应依赖于父类的数据。所以,应该将父类中的成员变量声明为private,并在父类中定义访问这些private成员变量的public型的方法。(public、protected和package较少修饰属性) 父类中方法的修饰符:关于父类中的private方法,如果某个方法是为类中其他的方法提供服务,只在类中使用,将其定义为private,对外界隐藏。 5.3 作用域和继承 子类从父类继承成员时,父类的所有public、protected、package成员,在子类中都保持它们原有的访问修饰符。 例如,父类的public成员成为子类的public成员。父类的protected成员也会成为子类的protected成员。 子类只能通过父类所提供的非private方法来访问父类的priva

文档评论(0)

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

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

1亿VIP精品文档

相关文档