- 1、本文档共27页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* * * * * * * * * * * * * * * * * * * * * * * 面向对象的三大特征 面向对象的程序设计有三大特征: 封装:解决了数据的安全性问题 继承:解决了代码的重用问题 多态:解决了程序的扩展问题 前面的章节我们已经学习了有关于封装的各个概念,这一章我们来讨论第二大特征——继承。 继承的概念 在现实生活中的继承,可以理解为儿子继承了父亲的财产,即财产重用; 面向对象程序设计中的继承,则是代码重用; 继承是利用现有的类创建新类的过程,现有的类称作基类(或父类),创建的新类称作派生类(子类)。 基类 方法和属性 派生类 基类方法 + 附加方法 大学系统人员分类树 人 学生 老师 大学生 研究生 继承的概念(续) 最高层是最普遍的、最一般的情况,往下每一层都比上一层更具体,并包含有高层的特征,通过这样的层次结构使下层的类能自动享用上层类的特点和性质; 继承其实就是自动地共享基类中成员属性和成员方法的机制。 在Java中实现继承 在Java中实现继承需要使用到extends关键字; 实现继承的一般语法是: [访问修饰符] class 派生类名 extends 基类名 { 成员列表 } 如: class Student extends Person { …… } 实现继承示例 class Person { //定义人类 public String mName; //姓名 public int mAge; //年龄 public void dining() { System.out.println(吃饱了...); } //吃饭的方法 } class Student extends Person { //学生类继承于人类 public float mGrade; //成绩 public void examination() { System.out.println(考试及格了...); } //考试的方法 } class Teacher extends Person { //教师类继承于人类 public float mSalary; //薪水 public void prelection() { System.out.println(上课很累...); } //上课的方法 } public class InheritanceDemo { //该类用于容纳main方法 public static void main(String[] args) { Student std = new Student(); //实例化学生对象 std.mName = 张三; std.mAge = 18; //为姓名和年龄赋值,访问的是父类中的成员 std.dining(); //调用吃饭的方法,访问的是父类中的成员 std.examination(); //调用考试方法,访问的是子类中的成员 Teacher tea = new Teacher(); //实例化教师对象 tea.mName = 谭浩强; tea.mAge = 65; tea.dining(); tea.prelection(); } } 继承的作用 当今软件设计的特征: 软件规模越来越大; 软件设计者越来越多; 软件设计分工越来越细。 引入继承,实现了代码重用; 引入继承,实现了递增式的程序设计。 继承的作用(续) 继承是能自动传播代码和重用代码的有力工具; 继承能够在某些比较一般的类的基础上建造、建立和扩充新类; 能减少代码和数据的重复冗余度,并通过增强一致性来减少模块间的接口和界面,从而增强了程序的可维护性; 能清晰地体现出类与类之间的层次结构关系。 与继承有关的注意事项 继承是单方向的,即派生类可以继承和访问基类中的成员,但基类则无法访问派生类中的成员; 在Java中只允许单一继承方式,即一个派生类只能继承于一个基类,而不能象C++中派生类继承于多个基类的多重继承方式。 类成员的访问控制权限 信息隐藏是面向对象程序设计的重要特点之一,它可以: 防止类的使用者意外损坏数据; 对任何实现细节所作的修改不会影响到使用该类的其它代码; 使类更易于使用。 在Java中实现信息隐藏的是访问控制权限机制; 访问控制权限包括4个访问修饰符:public、protected、private和缺省; 可以使用上述访问修饰符修饰类的成员。 访问修饰符 不受任何限制,本类或非本类均可随意访问。 public 本类
文档评论(0)