10继承与多态.ppt

10继承与多态.ppt

ID:48557200

大小:754.00 KB

页数:33页

时间:2020-01-23

10继承与多态.ppt_第1页
10继承与多态.ppt_第2页
10继承与多态.ppt_第3页
10继承与多态.ppt_第4页
10继承与多态.ppt_第5页
资源描述:

《10继承与多态.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、继承2为什么需要继承4-1开发教师类,其中教师分为Java教师以及.NET教师,各自的要求如下:Java教师属性:姓名方法:授课(步骤:打开Eclipse、实施理论课授课)、自我介绍.NET教师属性:姓名方法:授课(步骤:打开Visualstudio2005、实施理论课授课)、自我介绍3请问:以下这个解决方案中存在着什么问题?为什么需要继承4-2publicclassDotNetTeacher{privateStringname;//教员姓名publicDotNetTeacher(StringmyName){name=myName;}publicvoidgiveLession(){System

2、.out.println("启动VisualStudio2005");System.out.println("知识点讲解");System.out.println("总结提问");}publicvoidintroduction(){System.out.println("大家好!我是"+name+".");}}publicclassJavaTeacher{privateStringname;//教员姓名publicJavaTeacher(StringmyName){name=myName;}publicvoidgiveLession(){System.out.println("启动Eclips

3、e");System.out.println("知识点讲解");System.out.println("总结提问");}publicvoidintroduction(){System.out.println("大家好!我是"+name+".");}}代码存在重复,违背了“writeonce,onlyonce”的原则4为什么需要继承4-3如何改进?有没有可能建立继承关系,让子类自动继承父类的属性和方法?Java教师是教师吗?.NET教师是教师吗?publicclassTeacher{privateStringname;//教师姓名publicTeacher(StringmyName){name=

4、myName;}publicvoidgiveLesson(){System.out.println("知识点讲解");System.out.println("总结提问");}publicvoidintroduction(){System.out.println("大家好!我是“+name+"。");}}现在,所有子类中相同的代码都抽取到父类中了属 性行 为姓名授课自我介绍教师Java教师.NET教师5为什么需要继承4-4publicclassJavaTeacher2extendsTeacher{publicJavaTeacher2(StringmyName){super(myName);}pu

5、blicvoidgiveLesson(){System.out.println("启动Eclipse");super.giveLesson();}}publicclassDotNetTeacher2extendsTeacher{publicDotNetTeacher2(StringmyName){super(myName);}publicvoidgiveLesson(){System.out.println("启动VisualStudio.NET");super.giveLesson();}}使用继承,可以有效实现代码复用子类自动继承父类的属性和方法,子类中不再存在重复代码6如何实现继承3-1

6、在Java语言中,用extends关键字来表示一个类继承了另一个类,例如:publicclassJavaTeacher2extendsTeacher{//其余代码省略}在父类中只定义一些通用的属性与方法,例如:publicclassTeacher{privateStringname;//教员姓名publicTeacher(StringmyName){//初始化属性值}publicvoidgiveLesson(){//授课方法的具体实现}publicvoidintroduction(){//自我介绍方法的具体实现}}7如何实现继承3-2子类自动继承父类的属性和方法,子类中可以定义特定的属性和方法

7、publicclassTeacher{privateStringname;//教员姓名publicTeacher(StringmyName){//初始化属性值}publicvoidgiveLesson(){//授课方法的具体实现}publicvoidintroduction(){//自我介绍方法的具体实现}}publicclassJavaTeacher2extendsTeacher{publicJ

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。