- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
学习目标: 掌握Java的继承机制 掌握方法重写技术 理解面向对象编程的多态的意义 掌握与继承相关的关键字 了解抽象类与抽象方法的使用 任务一 用程序描员工与经理 一、任务描述 在单元三中,我们已经学习了如何用类来描述一个事物,首先应该考虑这个类“有什么”和“做什么”,即“属性”与“行为”。本任务中,将同时出现两个事物,员工和经理。显然,经理也是员工的一种,也具有姓名、性别等属性和输出信息和自我介绍的方法。但经理应该具备自己独特的属性,如职位,同时能输出包括职位在内的自我介绍信息。使用类的继承机制描述这两个类。 二、任务实施 1.设计员工类以及经理类 员工类应该有的属性为员工的姓名、性别、年龄和工资,其中工资通过2000+(年龄-20)/5*300计算得到。员工类的成员方法为输出员工信息以及输出员工自我介绍的文本。经理类大致与员工类相似,属性增加职位项目,其工资的计算公式为3000+(年龄-20)/5*300,而自我介绍的文本也需要介绍自己的职位。 建立员工类Emploee与经理类Admin,并且设计类ETest测试这两个类。程序保存为“ETest.java”。 2.使用继承机制 (1).使用继承创建类 经过单元三的学习,创建员工类与经理类并不复杂。但分析程序4.1很容易发现类Employee与类Admin存在大量的相同的代码。事实上,经理类与员工类相比,原本就存在大量重复的属性(如姓名、性别和年龄)和行为(信息输出)。使用面向对象的继承机制,让经理类Admin继承至员工类,这能使程序更加简洁。 程序4.2 ETest2: (2).使用protected关键字 注意变量salary,在程序4.1的Employee类中,使用private修饰;而程序4.2中使用protected修饰。private修饰的成员不能被继承,只能被自身成员访问;而protected修饰的成员可供自身及其子类成员访问。 可以说访问权限protected正是为继承机制而设计的。 (3).子类构造方法 子类的构造方法中,使用 super(name, gender, age); 调用了父类的构造方法。super关键字与this关键字正好相对,用来指代自身的父类。以上代表就等同于Employee类中的Employee(name, gender, age)。使用super调用父类的构造方法可以间接的访问父类的私有变量。正是通过这种途径,Admin类的对象才能具备父类私有的name、gender和age属性。 子类构造方法的一般形式如下: 子类类名(参数列表){ super(与父类构造方法参数相对应的参数); 子类特有成员的初始化; } 特别注意的是,子类构造方法中无论有没有使用super(),都必定调用父类的构造方法。若有super()语句,则必为构造方法的第一个语句。若不适用super()语句,系统则会调用父类的无参数的构造方法。 【例4.1】若程序4.2中子类构造方法不使用super(),程序是否正确。 Admin类的构造方法若不使用super(),则应改为 public Admin(String name,char gender,int age,String position){ =name; this.gender=gender; this.age=age; this.position=position; salary=3000+(age-20)/5*300; } 显然,此构造方法有多个错误。 3.重写方法 (1).重写 在本任务中,经理的自我介绍比起普通员工多了一句职务的介绍。在程序4.2中,实现的方式是在经理类Admin的声明中,在继承selfIntro()方法的基础上,增加了一个adminIntro()的方法。因此在main()方法中,对象ep3需要调用两个方法。 ep3.selfIntro(); ep3.adminIntro(); 使用方法重写,能提供更简洁的解决。 class Admin extends Employee{ private String position; public Admin(String name,char gender,int age,String position){ super(name,gender,age); this.position=position; salary+=1000; } public void selfIntro(){//重写父类的方法 System.out.println(我是一名员工); System.out.println(我是还一名管理人员); } }
您可能关注的文档
- Java程序设计第2版教学课件作者主编马世霞11网络编程课件.ppt
- Java程序设计第2章节.ppt
- Java程序设计第3章节.ppt
- Java程序设计第4章节面向对象程序设计基础.ppt
- Java程序设计第5章节Java类.ppt
- Java程序设计第6章节.ppt
- Java程序设计第7章节.ppt
- Java程序设计第8章节.ppt
- Java程序设计第9章节JDK库的使用.ppt
- Java程序设计第10章节AWT组件.ppt
- Java程序设计韦鹏程石熙肖丽单元5接口与包.ppt
- Java程序设计韦鹏程石熙肖丽单元6数组与字符串.ppt
- Java程序设计韦鹏程石熙肖丽单元7异常处理.ppt
- Java程序设计韦鹏程石熙肖丽单元8JavaApplet程序.ppt
- Java程序设计韦鹏程石熙肖丽单元9图形用户界面编程.ppt
- JohnWileySonsAndWileyInterScience课件.ppt
- JSPMySQLDreamweaver动态网站开发实例教程教学课件作者刘瑞新第1章节Dreamweaver的基本操作课件.ppt
- JSPMySQLDreamweaver动态网站开发实例教程教学课件作者刘瑞新第2章节创建与配置JSP运行环境课件.ppt
- JSPMySQLDreamweaver动态网站开发实例教程教学课件作者刘瑞新第3章节JSP语法基础课件.ppt
- JSPMySQLDreamweaver动态网站开发实例教程教学课件作者刘瑞新第4章节JSP的指令标识和动作标识课件.ppt
文档评论(0)